11 问答列表

模板副本分配功能的混淆

作者:Louis 提问时间:6/24/2023

[首先:Windows10 上的 Vs2019,仅支持 C++11] 我对模板复制分配功能感到困惑,例如:在此处输入图像描述 我发现规范化版本不起作用,为什么它不等于复制赋值功能?模板函数不是会像...

如何从构造函数复制 T(const T&) 调用对象 T?[已结束]

作者:Marco E 提问时间:2/2/2020

闭。这个问题是不可重现的,或者是由错别字引起的。它目前不接受答案。 这个问题是由一个错别字或一个无法再重现的问题引起的。虽然类似的问题可能在这里成为主题,但这个问题的解决方式不太可能帮助未来的读者。...

复制构造函数是始终隐式定义,还是仅在使用时定义?

作者:R_Kapp 提问时间:6/22/2018

请考虑以下代码: #include <memory> #include <vector> class A { private: std::vector<std::unique_ptr<int>>...

如何为具有自引用指针的类实现复制构造函数/赋值运算符?

作者:LinearM 提问时间:2/11/2019

我不太确定是否可以实现复制构造函数/赋值运算符,因此,如果我希望这个类等于另一个 bags 实例,它将用该实例替换自己。 我已经尝试了一般赋值运算符实现(检查自引用等)。 template <ty...

在 C++ 中,在定义自己的复制构造函数后,我可以跳过定义赋值运算符吗?

作者:cathgreen 提问时间:12/3/2019

当我定义一个类时,如果我需要深拷贝,我需要定义我自己的复制构造函数。 那么,是否也有必要定义赋值运算符? 如果被跳过,作业是否做浅拷贝?...

将移动构造函数委派到适当的复制构造函数是否安全?

作者:abura 提问时间:6/11/2020

为了避免代码重复,我想将移动构造函数和移动赋值运算符分别委托给适当的复制构造函数和赋值运算符: struct A { A() {...} //default constructor A(co...

C++11 标准是否要求实现者优先考虑 std::vector 的 noexcept 移动构造函数而不是 const 复制构造函数?

作者:Tadeus Prastowo 提问时间:9/25/2017

阅读这个和这个以及标准的 23.3.6.5/1,在最新的 C++ 标准草案中,当作为操作的结果重新分配其元素时,实现者应该优先使用非抛出移动构造函数而不是常量复制构造函数?是 13.3.3.1.4/1...

为什么在声明移动操作时删除复制操作?

作者:KnowItAllWannabe 提问时间:8/14/2014

当类显式声明复制操作(即复制构造函数或复制赋值运算符)时,不会为该类声明移动操作。但是,当类显式声明移动操作时,复制操作将声明为已删除。为什么存在这种不对称性?为什么不直接指定如果声明了移动操作,则不...

关于 std::lower_bound 中 comp 谓词的参数类型的问题

作者:Vinod 提问时间:9/17/2023

参考编号:std::lower_bound 摘录: comp- 二元谓词,如果第一个参数小于(即在第二个参数之前排序),则返回 true。 谓词函数的签名应等效于以下内容: bool pred...

使用 std::vector,为什么 &amp;vec[0] 未定义的行为,而 vec.data() 是安全的?

作者:Zebrafish 提问时间:1/7/2018

我一直在阅读 isocpp.org“链接此处”的常见问题解答,并遇到了以下警告:std::vector std::vector<int> v; auto a = &v[0]; // Is undef...


共618条 当前第11页