可能重复:
C++构造函数名后的冒号是做什么的?
我在网上找到了下面的例子,但是构造函数的语法让我有点困惑,特别是:符号.有人可以给我一个简短的解释吗?谢谢.
struct TestStruct {
int id;
TestStruct() : id(42)
{
}
};
Run Code Online (Sandbox Code Playgroud)
dee*_*see 28
构造函数初始化id为42调用它的时间.它被称为初始化列表.
在您的示例中,它等同于
struct TestStruct {
int id;
TestStruct()
{
id = 42;
}
};
Run Code Online (Sandbox Code Playgroud)
你也可以和几个成员一起做
struct TestStruct {
int id;
double number;
TestStruct() : id(42), number(4.1)
{
}
};
Run Code Online (Sandbox Code Playgroud)
当构造函数的唯一目的是初始化成员变量时,它很有用
struct TestStruct {
int id;
double number;
TestStruct(int anInt, double aDouble) : id(anInt), number(aDouble) { }
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57253 次 |
| 最近记录: |