竞赛组织 编程刷题 交流问答 精培课程 using namespace std; class CSample { int x; public: CSample() { cout<<"C1"<<endl;} CSample(int n ) {x = n;cout<<"C2,x="<<x<<endl;} }; int main() { CSample array1[2]; CSample array2[2] = {6,8}; return 0; }
时间: 2023-07-15 22:11:06 浏览: 151
探讨:C++中函数返回引用的注意事项
这段代码定义了一个名为 `CSample` 的类,它有两个构造函数:一个默认构造函数 `CSample()` 和一个带参数的构造函数 `CSample(int n)`。其中默认构造函数仅输出一行字符串 "C1",而带参数的构造函数除了输出 "C2" 外,还会将参数赋值给类的私有成员变量 `x`。
在 `main()` 函数中,首先定义了一个名为 `array1` 的 `CSample` 类型的数组,由于数组中没有显式地初始化元素,因此会调用默认构造函数 `CSample()` 来初始化数组元素,因此会输出两次 "C1"。
接着定义了另一个名为 `array2` 的 `CSample` 类型的数组,并使用花括号初始化了数组中的元素,即分别给第一个元素赋值为 6,第二个元素赋值为 8。由于使用了带参数的构造函数进行初始化,因此会输出两次 "C2",同时也会输出每个元素的值,即 "x=6" 和 "x=8"。
最后 `main()` 函数返回 0,程序结束。
阅读全文