您的位置:首页 > 其它

复制初始化和直接初始化

2014-06-28 00:56 169 查看
string str("12345");

string str = "12345";

在写代码时忽然想到这个两个有啥区别呢,其实这个还是c++基础薄弱的原因

于是我又翻开了primer

c++支持两种初始化方式:复制初始化和直接初始化

int ival(1024);//直接初始化

int ival = 1024;//复制初始化

对于类类型

string str("12345");//调用相应的构造函数,直接初始化

string str = "12345";//先用"12345"生成一个临时对象,然后调用复制构造函数来初始化str

下面这个

string str1("12345"), str2;

str2 = str1;//调用的赋值构造函数,重载了=操作符

PS:复制构造函数就是拷贝构造函数,翻译不同
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: