您的位置:首页 > 其它

拷贝和赋值的区别

2017-08-10 11:48 99 查看
//对于拷贝和赋值很容易混淆的一个问题

例如:

string str1 = "hello world";  

string str2 = str1;  

不要以为有“=”就是赋值操作,其实,这两条语句等价于:  

string str1 ("hello world"); //调用的是构造函数  

  string str2 (str1); //调用的是拷贝构造函数  

  

如果str2是下面的这样情况:  

1.string str2; //调用参数默认为空串的构造函数:string str2(“”);  

2.str2 = str1; //调用str2的赋值操作:str2.operator=(str1);  

  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  拷贝与赋值