博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
类中的赋值和构造
阅读量:5133 次
发布时间:2019-06-13

本文共 487 字,大约阅读时间需要 1 分钟。

类中的赋值操作和构造容易使人混淆,加以区分,引以为戒:

我用string类为例:

string str1 = "hello world"; string str2 = str1;

有“=”不一定就是赋值操作,其实,上边的string str2 = str1,就不是赋值操作,它等效下边的语句:

string str1 ("hello world"); //调用的是构造函数 string str2 (str1); //调用的是拷贝构造函数
你看到的赋值,其实是调用了拷贝构造函数
回来,再例如:

string str2; str2 = str1;
这才是赋值操作,等效于:

string str2(“”); str2.operator=(str1);
即就是:
string str2; //调用参数默认为空串的构造函数:string str2(“”); str2 = str1; //调用str2的赋值操作:str2.operator=(str1);
定要分清。

赐教!

转载于:https://www.cnblogs.com/li-ning/p/9490001.html

你可能感兴趣的文章
request.getReader()的怪异事件
查看>>
C++ 实践总结
查看>>
composer 国内镜像配置
查看>>
软件是天时、地利、人和的产物!
查看>>
python定时清空本目录下除本脚本外的全部文件
查看>>
【PHP】在目标字符串指定位置插入字符串
查看>>
【JS】jQuery设置定时器,访问服务器(PHP示例)配合微信、支付宝原生支付,跳转web网页...
查看>>
实验四2
查看>>
在小程序开发的新风口 看华为云如何助立创科技抢占市场红利
查看>>
第一次博客随笔:苏钰冰
查看>>
HIS-DELPHI-读取数据库配置
查看>>
如何引入iconfont图标与Element-UI组件
查看>>
ArcMap合并之路 -- 该段路合并成一个完整的路
查看>>
HTML5 a标签的down属性进行图片下载
查看>>
js日期比较
查看>>
0119——UIImageView的一些属性 和 简单动画实现
查看>>
Castle ActiveRecord学习(八)事务
查看>>
for循环的break和continue
查看>>
Win32串行通信中文版(Serial Communications In Win32)
查看>>
go语言的null值问题
查看>>