c++的直接初始化与复制初始化

直接初始化是直接调用类的构造函数进行初始化如下:

string a;//调用默认构造函数

string a("hello");//调用参数为 const char* 类型的构造函数

string b(a);//调用拷贝构造函数  类似 string b = a;

复制初始化:指的是用“=” 号来初始化对象的 。如下:

string a="hello";

string b = a;

上面的 两种写法完全等效  但是  在一些情况下还是用区别的。

复制初始化:应该是先调用对应的构造函数创建一个临时对象,再调用拷贝构造函数将临时对象拷贝给要创建的对象。

如上:string a= "hello";就是上面的情况。

猜你喜欢

转载自www.cnblogs.com/zhangkele/p/8974905.html
今日推荐