社区
C++ 语言
帖子详情
关于拷贝构造函数的使用情况
Edwardyewei
2008-06-17 08:42:01
在下面的代码的main函数中类Copy的拷贝构造函数被调用了多少次
Copy f(Copy c)
{
Copy temp(c);
return temp;
}
main()
{
Copy c1;
Copy c2=f(c1);
}
A. 2 B. 3 C. 4 D. 5
我知道c1代入函数做参数使用了一次,Copy temp(c)一次,还有哪儿?
...全文
84
7
打赏
收藏
关于拷贝构造函数的使用情况
在下面的代码的main函数中类Copy的拷贝构造函数被调用了多少次 Copy f(Copy c) { Copy temp(c); return temp; } main() { Copy c1; Copy c2=f(c1); } A. 2 B. 3 C. 4 D. 5 我知道c1代入函数做参数使用了一次,Copy temp(c)一次,还有哪儿?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Vitin
2008-06-17
打赏
举报
回复
因为是否优化,是有编译器决定的。
当然在某个具体的编译器上(以及确定的配置),调用次数是固定的。
CHARLISW
2008-06-17
打赏
举报
回复
怎么会有最多和最少,调用了几次就是几次
3
Vitin
2008-06-17
打赏
举报
回复
最多四次,最少两次。
1、构造 c
2、构造 temp // 通过“具名返回值优化”,可以去掉
3、构造 f 的返回值 // 通过“返回值优化”,可以去掉
4、构造 c2
太乙
2008-06-17
打赏
举报
回复
Copy c2=f(c1); 这等号不算一次??
胡椒爸爸
2008-06-17
打赏
举报
回复
一般编译器都会有返回值优化的,所以就是你说的这两次了
ckt
2008-06-17
打赏
举报
回复
普通情况下
return temp; // 也会调用
珍惜生命远离CPP
2008-06-17
打赏
举报
回复
如果有返回值优化,那么通常就这2次.
拷贝构造函数
的三种
使用
情况
本文详细介绍了
拷贝构造函数
的三种
使用
场景:
使用
已创建对象初始化新对象、以函数值传递方式传参、以函数值方式返回局部对象,并通过实例演示了每种
情况
。
拷贝构造函数
的特点和
使用
情况
本文深入探讨了
拷贝构造函数
的特点及其在C++中的应用场景,包括初始化、函数传参及返回值时的调用机制,区分浅拷贝与深拷贝的概念,帮助读者理解
拷贝构造函数
的重要性。
拷贝构造函数
使用
情况
本文详细介绍了C++中的
拷贝构造函数
概念及其应用场景,包括如何实现深拷贝以避免内存错误,并提供了具体代码示例。
拷贝构造函数
剖析【C++】
本文详细解析了C++中的
拷贝构造函数
,包括它的定义、作用、
使用
情况
及注意事项。
拷贝构造函数
是一种特殊的构造函数,用于用已有对象初始化同类的新对象,其参数必须为同类对象的引用,以避免无穷递归。文中通过实例展示了
拷贝构造函数
在实际编程中的应用,并解释了为何必须
使用
引用的原因。
c++学习_
拷贝构造函数
应用的三种
情况
本文详细介绍了
拷贝构造函数
的应用场景,包括对象初始化、作为函数参数及返回值时的
使用
情况
,并通过具体代码示例进行说明。
C++ 语言
65,210
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章