C++构造函数
#include<iostream>usingnamespace std;classClassTest{public:ClassTest(){cout <<"ClassTest()"<<endl;}ClassTest(int i){cout <<"ClassTest(int)"<<endl;value2 = i;}ClassTest(int i,int j): value(i), value2(j){cout <<"ClassTest(int, int)"<<endl;}private:int value =0;int value2 =0;};
- 上面是类的声明与实现,接下来我们来定义类对象。
int main(){ClassTest test;//使用默认构造函数(即ClassTest())//ClassTest test();/*这里被认为是一个函数的声明,而不是定义对象*/ClassTest test1(1);//ClassTest(int)ClassTest test2(1,2);//ClassTest(int, int)ClassTest test3 = ClassTest(); //先调用ClassTest()构建一个临时变量,然后将这个临时变量通过拷贝构造函数赋值给test3return0;}
- 定义类指针(引用这里不再说明)
int main(){ClassTest* pClass =newClassTest;ClassTest* pClass1 =newClassTest();ClassTest* pClass2 =newClassTest(1);ClassTest* pClass3 =newClassTest(1,2);delete pClass;delete pClass1;delete pClass2;delete pclass3;return0;}
- 其中第一句和第二句是等价的,它们调用的是同一个构造函数。

浙公网安备 33010602011771号