copy-constructor 相关问题

复制构造函数是一个构造函数,它创建一个新对象,它是现有对象的克隆。该术语主要用于C ++编程语言,其中复制构造函数具有特殊状态。

Swift结构中是否有复制构造函数?[已关闭]

众所周知,当把一个结构体的实例分配给另一个实例,或者把它传递给一个函数时,Swift本质上是按值复制实例。然而我找不到任何地方,如果我们 ...

回答 1 投票 0

在没有复制构造函数的情况下创建一个类的std::向量的std::向量。

我想创建一个std::向量。 > 其中LibraryClass是我无法修改的,也没有复制构造函数。对于一个std::vector , ...

回答 1 投票 0

如何为地图初始化副本构造函数?

我至少已经将头撞了两个小时,在这里我的知识可能缺少空白。基本上,我必须为复制构造函数编写函数,但无法获取它...

回答 1 投票 0

弹出“调试断言失败”

我不知道怎么了,我需要定义一个构造函数还是只保留一个副本构造函数?我认为这是浅拷贝和深拷贝的问题。请帮忙,谢谢。在调试时,请弹出...

回答 2 投票 0

为什么不需要将具有已删除副本构造函数的类型的移动构造函数标记为已删除?

考虑std :: mutex。我明白为什么std :: mutex不应该是可移动的。但是它的副本构造函数被清楚地标记为已删除,但是我还没有看到它的move构造函数这样的声明。那么为什么...

回答 1 投票 1

为什么无需将“ std :: mutex”的运动构造函数标记为已删除?

为什么没有必要将std :: mutex的运动构造函数标记为已删除?我完全理解为什么std :: mutex不应该是可移动的。但是我还有一个问题。它的副本构造函数显然是...

回答 1 投票 1

为什么std :: mutex既不可复制又不可移动?为什么std :: mutex的复制ctor应该标记为已删除?如果不是,是否有任何潜在的问题?

有人能说出std :: mutex既不可复制又不可移动的原因?有人告诉我,这与避免资源浪费有些关系。为什么std :: mutex的副本ctor应该是...

回答 2 投票 1

为什么std :: mutex既不可复制又不可移动?为什么std :: mutex的复制ctor应该标记为已删除?如果不是,是否有任何潜在的问题?

有人能说出std :: mutex既不可复制又不可移动的原因?有人告诉我,这与避免资源浪费有些关系。

回答 2 投票 0

是否可以定义std :: thread并在以后进行初始化?

我的目标是将std :: thread对象保留为数据成员,并在需要时对其进行初始化。我无法执行此操作(如下面的代码所示),因为删除了std :: thread类的副本构造函数。 ...

回答 4 投票 20

具有完整规则五的简单链表

我正在尝试正确地遵循5的规则来实现一个简单的链表。我现在大约3,尽管我在这里已经有疑问,但是从那以后,我就如履薄冰了。似乎很合理...

回答 1 投票 0

使用副本构造函数修复浅表副本

我定义了一个复制构造函数,以避免对数据成员n进行浅表复制,但是它不起作用,当我更改v1时v2仍在更改,我在做什么错? #include ... ...>

回答 1 投票 0

复制构造函数和浅表副本

我编写了以下代码以查看浅表副本。我一直期望v2是v1的浅表副本,因为没有定义复制构造函数,所以我希望更改v1.n也会导致v2.n发生更改,...

回答 1 投票 0

c ++移动语义是否在每种情况下都节省了资源?

我知道c ++ move语义应该节省处理器的能力和内存,因为Move :: Move(Shallow && source)noexcept //移动构造函数{data = source.data; //假设...

回答 1 投票 0

如果不是该类的“副本构造函数”,是否可以移动对象?

如果对象不是该类的副本构造函数,是否可以移动对象?换句话说,类具有移动构造函数而其副本构造函数被标记为已删除是合法的。

回答 1 投票 0

为什么不调用此模板类的副本构造函数?

复制构造函数永远不会被调用(我正在使用带有-std = c ++ 11的g ++):pointers.cpp:#include template class SharedPtr {private:int * m_Count; T * m_Ptr; ...

回答 1 投票 -1

创建带有和不带有新关键字的C ++对象

使用新关键字创建对象:#include #include 使用命名空间std; class Person {private:字符串名称; public:Person(字符串名称){setName(...

回答 3 投票 3

为什么复制构造函数不需要检查输入对象是否指向自身?

作为下面的代码,复制分配运算符必须检查输入对象是否指向自身。我想知道为什么复制构造函数不需要执行相同的检查。我是C ++的新手。...

回答 1 投票 2

C ++返回值和移动规则异常

当我们从C ++函数返回值时,会发生复制初始化。例如:std :: string hello(){std :: string x =“ Hello world”;返回x; //假定RVO已禁用。按照...

回答 1 投票 0

为什么使用`无常量副本构造函数时,编译器会抱怨?

作为主题,下面的代码是正确的。 #include class ABC {public:ABC(){std :: cout <

回答 1 投票 1

为什么删除移动构造函数后仍使用复制构造函数?

作为主题,相关代码为:#include class ABC {public:ABC(){std :: cout <

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.