创建对象有多种方法,其中包括普通的定义、通过拷贝函数初始化、new动态分配。
#include <iostream>
using namespace std;
class ClsTest{
public:
ClsTest(){}
ClsTest(int d){ data = d; }
void print(void) { cout << "Hello" << endl; }
private:
int data;
};
int main()
{
// 普通定义
ClsTest a; // 注意没有(),否则编译器认为是函数声明不会报错
a.print(); // 后面这句才会报错
// 隐式调用构造函数
ClsTest b(10);
b.print();
// 显式调用构造函数
ClsTest c = ClsTest(20);
c.print();
// 拷贝构造函数
ClsTest d = b;
d.print();
// 拷贝构造函数
ClsTest e(a);
e.print();
// new分配,手动释放。注意 * 和 ->
ClsTest *f = new ClsTest(100);
f->print();
delete f;
return 0;
}