什么:className()在className的构造函数中是什么意思?

eas*_*ees 11 c++ c++11

我在代码库中看到了一些我正在研究的代码,如下所示:

 ZfooName::ZfooName(int magoo)
    : ZfooName()
 {
    fGoo = magoo;
 }
Run Code Online (Sandbox Code Playgroud)

我假设这是一个C++ 11功能,因为它在VS2012中断了,但它是什么意思?

R S*_*ahu 21

这是C++ 11中的一个新功能.它被称为委托构造函数.

构造函数首先调用默认构造函数(被委托给的构造函数).返回默认构造函数后,将执行委托构造函数的主体.

有关其他信息,请参阅http://www.stroustrup.com/C++11FAQ.html#delegating-ctorhttps://en.cppreference.com/w/cpp/language/initializer_list#Delegating_constructor.