问答列表

为什么没有一个复制构造函数被调用 [duplicate]

作者:Lucy 提问时间:12/4/2022

这个问题在这里已经有答案了: 什么是复制省略和返回值优化? (5 个答案) 这里不应该有一个复制 ctor 调用吗?省略已禁用(无命名返回值优化)( 1 个答案) 保证复制消除如何工作? (2 个答案...

C++ 中的替代复制构造函数

作者:ugo_capeto 提问时间:3/30/2023

编辑: 我将介绍一些设计糟糕的类,这是一个老问题,从那时起我就成长为一名程序员...... 假设我有一个具有某种状态的类,并且使用一个仅使用该状态的一部分的方法,您将明白我的意思: #includ...

像 Initialization 一样聚合,无需多余调用构造函数

作者:tommsch 提问时间:2/7/2022

我正在尝试主要编写 .但是,我对聚合初始化的规则(以及其他一些小细节)不是很满意,因此不想使用它。std::array 我不喜欢聚合启动的事情: 列表中的元素少于必要的元素,不会产生错误,这对于聚...

澄清我对复制初始化和直接初始化的见解

作者:Finley 提问时间:7/18/2018

按如下方式定义类: class A { public: A(): s("") {} //default constructor A(const char* pStr): s(pStr) {} /...

C++ 隐式复制构造函数成员变量复制排序

作者:Lajos Nagy 提问时间:4/22/2020

只是想仔细检查:C++ 标准保证成员变量按隐式复制构造函数的声明顺序复制,对吗?在下面的例子中,被复制到之前,对吧?(假设两者都具有非平凡的复制构造函数,并且在复制之前复制正确性很重要。abABab ...

模棱两可的类模板转换

作者:Darnoc Eloc 提问时间:6/11/2022

如何将模板构造函数添加到类中,以便显式地执行从复杂到复杂的复制初始化,而不会产生歧义?是否有与编译器和 C++ 版本/标准无关的解决方案?有没有一种方法只需要定义构造函数而不需要额外的运算符重载? ...

C++ 入门第 5 版联合和类类型成员

作者:Itachi Uchiwa 提问时间:8/24/2021

您好,我有这个来自 C++ 入门第 5 版第 19.6 章联合: class Token { public: // copy control needed because our class ha...

调用非默认构造函数作为成员初始化

作者:Donut 提问时间:6/14/2018

我有一个类“A”和一个类“B”,使得 A 包含 B 的实例 class A { B b = B(parameters...); Other thing = 3; } 这段代码的问题在于 B ...

复制值返回的对象和移动它之间的区别?

作者:Kirill Shvedov 提问时间:10/9/2023

我想知道将函数的返回值移动到对象中而不是直接复制它是否有任何意义?std::string "ip_str“是应该获取 ”“ 返回值的对象:getp1settings() std::string i...

Visual Studio 2013 和 2015 中的 C++ 编译器错误 C2280“尝试引用已删除的函数”

作者:Alessandro Jacopson 提问时间:7/7/2015

此代码片段在 Visual Studio 2013(版本 12.0.31101.00 Update 4)中编译时没有错误 class A { public: A(){} A(A &&){} };...


共1619条 当前第21页