C++ 两种类型的构造函数/哪一种更好?
假设同一类Simple有两个版本: 一, 二,C++ 两种类型的构造函数/哪一种更好?,c++,C++,假设同一类Simple有两个版本: 一, 二, 编译、运行和给出相同的结果。应该使用哪一种,它们之间有什么内在区别?谢谢。最好使用初始值设定项列表来初始化成员变量,这就是它的用途。在复杂对象的情况下,由于您可以跳过默认初始化,因此也可能有效率优势。如果成员没有默认构造函数,或者是const或reference,那么您将别无选择,只能将其放入初始值设定项列表中 我更喜欢将函数体保持为单独的行,以防需要在其中一行上设置断点 #include <iostream> using names
编译、运行和给出相同的结果。应该使用哪一种,它们之间有什么内在区别?谢谢。最好使用初始值设定项列表来初始化成员变量,这就是它的用途。在复杂对象的情况下,由于您可以跳过默认初始化,因此也可能有效率优势。如果成员没有默认构造函数,或者是const或reference,那么您将别无选择,只能将其放入初始值设定项列表中 我更喜欢将函数体保持为单独的行,以防需要在其中一行上设置断点
#include <iostream>
using namespace std;
class Simple
{
public:
Simple() { }
Simple(int c)
{
data = c;
cout << data << endl;
}
private:
int data;
};
int main()
{
Simple obj(3);
return 0;
}
#include <iostream>
using namespace std;
class Simple
{
public:
Simple() { }
Simple(int c) : data(c) { cout << data << endl; }
private:
int data;
};
int main()
{
Simple obj(3);
return 0;
}