腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
0
回答
什么时候
在
cpp
中
调用
复制
构造
函数
?
、
、
doglist.push_back(d); doglist.push_back(ddd);} 你好,我是
cpp
我试着
在
我的班级狗中使用
复制
构造
函数
。我使用push_back三次将三只狗推入载体。所以我预计拷贝
构造
函数
会被
调用
三次。但是,
在
执行代码后,我发现
复制
构造
函数
被
调用
浏览 11
提问于2016-07-03
得票数 4
1
回答
C++14
中
的RVO和删除的移动
构造
函数
、
、
正如我
在
复制
推荐文章中所读到的,对于C++14: ..。编译器是允许的,但不需要省略类对象的
复制
和移动(自C++11)
构造
,即使
复制
/移动(自C++11)
构造
函数
和析构
函数
具有明显的副作用。这是一个优化:即使发生了并且没有
调用
copy-/move-constructor,它仍然必须是,并且必须是可访问的(就好像根本没有进行优化一样),否则程序是错误的。因此,
复制
或移动
构造
<em
浏览 0
提问于2018-02-03
得票数 6
回答已采纳
1
回答
删除移动
构造
函数
时,为什么不
复制
我的对象?
、
我试图使用这段代码来演示
复制
构造
函数
的使用。我的假设是,当我有一个按值返回的
函数
时,我的编译器将在默认情况下执行对象的移动。但是,当移动
构造
函数
不可用时,编译器将进行
复制
(
在
C++03
中
,编译器将在按值返回时进行
复制
)。那么,为什么在下面的示例
中
编译器试图
调用
显式删除的移动
构造
函数
而不是可用的
复制
构造
函
浏览 2
提问于2013-05-23
得票数 34
回答已采纳
3
回答
更改默认的
复制
构造
函数
C++
、
、
我在理解如何在C++
中
重写默认的
复制
构造
函数
时遇到了问题。我没有收到编译错误。前面的例子向我展示了下面的模式。下面列出了HashTable.
cpp
和Hashtable.h文件的摘录。Hashtable.hHashTable.
cpp
HashTable ht2 { ht1 };
浏览 9
提问于2015-12-09
得票数 0
回答已采纳
3
回答
在实践
中
,
什么时候
调用
移动
构造
函数
?
、
、
、
我最近学到了移动
构造
函数
,但很多在线资源都没有讨论
复制
省略。
复制
省略对我来说也是有意义的,但它让我想知道,如果没有一个超级人为的例子,移动
构造
函数
什么时候
才能被
调用
。b(x + y); 这篇文章说,这两个
函数
都应该
调用
移动
构造
函数<
浏览 173
提问于2021-06-01
得票数 4
回答已采纳
1
回答
复制
构造
函数
- C++08在这段代码中出错
、
[-Wreturn-type] ^ 现在,通过将
复制
构造
函数
的参数设置为const类型来解决这些错误。我想知道我对为什么将
复制
构造
函数
的参数设置为const类型的理解是否解决了这个问题。如果我的理解或推理不正确,请告诉我。现在,
在
方法makeFoo
中
,
在
语句执行后
调用
foo的return foo();常规
构造
函数
。然后
调用
foo的
复制
<e
浏览 4
提问于2015-02-21
得票数 2
回答已采纳
2
回答
使用
函数
的返回值初始化对象时未
调用
的
构造
函数
、
、
、
、
return a;}; { A b = a.fun(c);}ConstructorCopy Constructor上面使用g++ -fno-elide-constructors file.
cpp
我的问题是哪个
调用
复制
构造
函数
被删除(返回时的临时对象还是被
复制</
浏览 0
提问于2014-11-14
得票数 9
回答已采纳
3
回答
c++
构造
函数
和
复制
构造
函数
、
:9:4看,编译器似乎试图将A转换为int,但是代码是A = 10;,如果我是编译器,我将
在
输出t.
cpp
:10:4
中
,编译器表示它需要一个l值
复制
构造
函数
,因此我将代码改
浏览 1
提问于2019-04-11
得票数 3
回答已采纳
1
回答
什么时候
需要显式
调用
std::move和不在
cpp
中
?
、
、
现在,我以为我理解编译器
什么时候
可以使用一个move
构造
函数
,但显然我不理解,这里我展示了move
构造
函数
和我认为应该使用的
函数
。只有当我显式地使用std::move时,它才会出现。为什么会这样呢?Vector<double> v4=moveVectorAfterAdd(v1,v2); } (顺便提一句,如果不实际使用std::move,则lldb甚至不允许我
在
move
构造
函数
中</
浏览 5
提问于2021-09-09
得票数 6
回答已采纳
3
回答
当抛出一个对象时,它是被
复制
还是被移动?
、
、
、
、
据我所知,默认情况下会
复制
抛出的对象。因此,当我抛出一个对象时,应该
调用
复制
构造
函数
。我也知道编译器可以优化和省略
复制
。我在这里有一个简单的程序,我抛出了一个叫做X的类。如果我把这个类设为不可
复制
的,那么这个对象就不能被抛出。但是一些意想不到的事情发生了。如果我删除了
复制
构造
函数
,编译器就会报错。如果我注释了
复制
构造
函数
的删除并删除了移动
构造
<e
浏览 3
提问于2020-03-11
得票数 2
3
回答
复制
构造
函数
的
调用
、
、
我理解,
在
创建基于现有对象的新对象时,将
调用
复制
构造
函数
。但是,我一直试图这样做,并且我发现
复制
构造
函数
没有被
调用
。m_aObject = local_obj1; // should invoke the copy constructor * A.
cpp
A::A(A const& obj)} A::A(i
浏览 2
提问于2016-11-07
得票数 0
回答已采纳
2
回答
为什么要两次
调用
C++
复制
构造
函数
?
、
我有一些按值返回类对象的代码,并且
复制
构造
函数
的
调用
比我想象的要多。这似乎是g++编译器所做的事情,但我不知道为什么。,关闭它的产出如下:
构造
函数
破坏者破坏者破坏者 因此,
复制
浏览 7
提问于2022-04-03
得票数 0
回答已采纳
2
回答
C++:应该
调用
哪个
构造
函数
:
构造
函数
还是
复制
构造
函数
?
、
、
、
、
现在,当我取消对
复制
构造
函数
的注释时,我得到了一个编译时错误:
cpp
_test.
cpp
:140:19: note: candidates are:
cpp
_test.<em
浏览 1
提问于2013-06-17
得票数 1
回答已采纳
2
回答
使用带括号的初始化列表
调用
显式
构造
函数
:是否有歧义?
、
、
、
, int ) { } // (2) B paren({1, 2}); // (3)}main.
cpp
:
浏览 46
提问于2016-01-06
得票数 22
回答已采纳
2
回答
c++“对'Foo::Foo(std::string)‘的引用未定义”
、
我想创建类Foo的一个实例,它的
构造
函数
中有一个字符串参数。namespace std; { Foo(string s); string id;Foo.
cpp
#include <string>using namespace std; {} main.
cpp
浏览 0
提问于2010-09-07
得票数 3
回答已采纳
1
回答
在
c++98
中
实现移动
构造
函数
&移动赋值操作符以获得更好的性能
、
、
、
、
我是否可以
在
C++98
中
使用
复制
构造
函数
和赋值操作符来模拟移动
构造
函数
和移动赋值操作符的功能,以便在我知道只对代码
中
的临时对象
调用
复制
构造
函数
和
复制
赋值时提高性能,或者
在
我的眼睛
中
插入针?我以两个例子为例,一个是普通
复制
构造
函数
&
复制
赋值操作符,另一
浏览 2
提问于2016-01-05
得票数 5
回答已采纳
3
回答
C++与gcc和visual studio不同的编译错误,“在此上下文中”
、
、
、
我以前也发布过类似的问题,但我
在
代码中有一个小错误,所以被忽略了,让我再问一遍。In file included from main.
cpp
:2:0: NonCopyableObject.h: In copy constructor `const NonCopyableObject&a
浏览 2
提问于2013-03-12
得票数 0
2
回答
类
构造
函数
在
创建带有类对象的向量时不会被
调用
。
但是
构造
函数
只被
调用
一次。当我打印对象的值时,两个对象都将x值打印为'1‘。下面是输出。size : 21myclass(myclass &obj)
浏览 4
提问于2017-10-31
得票数 1
回答已采纳
1
回答
什么时候
调用
复制
构造
函数
?
、
、
constructor:100我以为它会输出copy constructor:100因为
构造
函数
(A(30))被
调用
。
浏览 2
提问于2022-07-18
得票数 0
1
回答
复制
构造
函数
不起作用?
、
、
、
、
我认为当我
在
B
中
删除move
构造
函数
时,下面的代码仍然可以编译,因为它仍然应该使用
复制
构造
函数
来
构造
B对象。为什么编译器现在抱怨。如果没有=delete,它就不会
调用
复制
构造
函数
,因为它不允许提供默认的移动
构造
函数
!)}; {}main.<em
浏览 1
提问于2015-04-26
得票数 3
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
在函数中调用函数
在 golang 中如何调用私有函数
在Python中如何在main函数中调用类中的方法
在Python中实现导入模块后直接调用函数的方法
虚幻4在C+中通过字符串调用函数
热门
标签
更多标签
云服务器
ICP备案
云直播
对象存储
腾讯会议
活动推荐
运营活动
广告
关闭
领券