我刚进入一家新公司,大部分代码库都使用初始化方法而不是构造函数.
struct MyFancyClass : theUberClass
{
MyFancyClass();
~MyFancyClass();
resultType initMyFancyClass(fancyArgument arg1, classyArgument arg2,
redundantArgument arg3=TODO);
// several fancy methods...
};
Run Code Online (Sandbox Code Playgroud)
他们告诉我这与时间有关.在构造之后必须完成一些事情,这些事情在构造函数中会失败.但是大多数构造函数都是空的,我没有看到任何不使用构造函数的原因.
所以我转向你,哦,C++的向导:为什么你会使用init方法而不是构造函数?