社区
C++ 语言
帖子详情
Effective C++的一个问题,关于拷贝构造函数和operator=
Snow_1980
2005-03-18 02:13:27
在条款11里有这样一个例子
String a("Hello");
{
String b("World");
....
b = a;
}
String c = a;
为什么b = a执行的是默认的operator=函数,而String c = a执行的是拷贝构造函数?我觉的两个好像都是用的operator=函数
...全文
131
6
打赏
收藏
Effective C++的一个问题,关于拷贝构造函数和operator=
在条款11里有这样一个例子 String a("Hello"); { String b("World"); .... b = a; } String c = a; 为什么b = a执行的是默认的operator=函数,而String c = a执行的是拷贝构造函数?我觉的两个好像都是用的operator=函数
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
oyljerry
2005-03-18
打赏
举报
回复
拷贝构造函数,定义一个新的对象时,用已存在的对象进行初始化
赋值则是,为一个存在的对象赋予值
zjraycj
2005-03-18
打赏
举报
回复
拷贝构造函数:在声明时用一个已存在的类对象进行初始化
赋值重载则是为一个已存在的对象(也就是说开始已经被定义或声明过的对象)重新赋予另一个值的过程
langzi8818
2005-03-18
打赏
举报
回复
UP,呵呵~
kobefly
2005-03-18
打赏
举报
回复
楼上所言极是
一个是在定义的时候初始化
而另一个是一个过程中的赋值
这是不一样的
Salam2001
2005-03-18
打赏
举报
回复
总结一下就是:
复制构造函数用于新声明对象时的初始化操作.
operator=() 用于一般的赋值操作.
nickshen
2005-03-18
打赏
举报
回复
String c = a;的意思就是以a为初值构造出c来,所以是拷贝构造函数
如果string c; c = a;那这里就是调用的operato=
Effect
ive
C++
条款11:为需要动态分配内存的类声明
一个
拷贝构造函数
和
一个
赋值函数 条款12:尽量使用初始化而不要在构造函数里赋值 条款13:初始化列表中成员列出顺序和它们在类中的声明顺序相同 条款14:确定基类有虚析构函数 条款15...
Effect
ive
.
C++
.中文第二版.50条款doc文档.chm
条款11: 为需要动态分配内存的类声明
一个
拷贝构造函数
和
一个
赋值操作符 条款12: 尽量使用初始化而不要在构造函数里赋值 条款13: 初始化列表中成员列出的顺序和它们在类中声明的顺序相同 条款14: 确定基类有虚析构...
flink kubernetes
operator
入门与实战
Flink Kubernetes
Operator
是
一个
基于 Kubernetes 的 Apache Flink 集群管理工具,它可以帮助用户在 Kubernetes 上轻松部署和管理 Flink 集群。本课程将介绍 Flink Kubernetes
Operator
的基本概念和使用方法。在本...
Effect
ive
C++
条款12:构造/析构/赋值运算之(复制对象时勿忘其每
一个
成份)
我们在前面文章已经介绍了,如果类没有手动声明
拷贝构造函数
或拷贝赋值运算符,那么编译器会为我们自动生成这两个成员,并且它们的行为是:将被拷贝的对象的所有成员做一份拷贝 二、复制对象时确保复制所有成员 下面...
C++
拷贝构造函数
和
operator
=
1
拷贝构造函数
参数的特点对于
一个
类X,如果
一个
构造函数的第
一个
参数是下列之一:a) X&b) const X&c) volatile X&d) const volatile X&因此 X::X(X&, int=1); //是
拷贝构造函数
并且类中可以存在超过
一个
拷贝构造...
C++ 语言
64,685
社区成员
250,491
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章