move-semantics 相关问题

移动语义是一种编程语言功能,当源对象是临时对象或其他过期对象时,允许复制操作被更有效的“移动”替换。

为什么在仅一次调用std :: emplace_back的情况下两次调用动作构造函数?

我知道std :: emplace_back使用placement-new在容器提供的位置就地构造元素。为什么在std :: emplace_back ...

回答 1 投票 0

为什么在调用std :: emplace_back时涉及两次运动构造函数?

我知道std :: emplace_back使用placement-new在容器提供的位置就地构造元素。为什么在std :: emplace_back ...

回答 1 投票 0

使用不可移动,不可复制的对象初始化unique_ptr

我有一个类,需要将其存储在unique_ptr的向量中。但是,我看到的是C2664错误,如下所示:“ AffinityThreadGroup :: AffinityThreadGroup(AffinityThreadGroup &&)无法转换...

回答 1 投票 0




如何省略推导参数类型的完美转发?

假设我有一些要推导的参数类型(或几种参数类型)的函数。我也希望基于事实是右值或左值的不同行为。 ...

回答 3 投票 7

这两个表达式是否都相同:“ CTest cTest(t);” “ CTest cTest = t;”在C ++中?效率不同吗?

作为主题,相关代码在下面列出。您可以在https://godbolt.org/z/bcf8js上进行检查。毫无疑问,EntityId_t c_SEDSubscribe(ENTITYID_SEDP_BUILTIN_PUBLICATIONS_READER); ...

回答 1 投票 0

移动包含向量的可分配类 >

Foo类具有一个右值引用构造函数,该构造函数可移动包含的unique_ptrs向量,因此以下代码为何在Foo()上带有或不带有std :: move的情况下都给出以下错误,无论为什么[

回答 1 投票 1

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

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

回答 1 投票 1

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

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

回答 1 投票 0

[在源对象之后仍需要使用源对象时调用父级移动赋值运算符

TLDR-如有必要,可以将其标记为重复项;我将删除问题。但是,四处寻找后我什么也找不到。请考虑以下类:类Base {...

回答 2 投票 0

作为const引用参数传递的类的移动成员

考虑:模板 ResourceHolder&运算符+ =(const ResourceInserter &插入符){如果constexpr(sizeof ...(Args)== 0){insert(std:...

回答 3 投票 0

可以将带左值引用的函数直接用于带右值引用的函数?

我一直在编写以下代码来支持对rvalues的函数调用,而不必在返回值上显式移动std :: mo。 struct X {X&do_something()&{//一些...

回答 1 投票 2

我应该让我的局部变量为const还是可移动的?

我对本地作用域中任何对象的默认行为是使其成为常量。例如:auto const cake = bake_cake(arguments);我会尽量减少非功能性代码,因为这会增加...

回答 3 投票 4

隐式移动构造函数

隐式move构造函数到底在做什么?例如,下一个类的隐式move构造函数的外观如何(您能否提供此...的示例实现...

回答 1 投票 0

隐式移动构造函数和赋值运算符

这意味着隐式移动构造函数将成员级移动和隐式移动赋值运算符都进行成员级赋值吗?来自https://en.cppreference.com/w/cpp/language / ...

回答 1 投票 0

我应该如何将packaged_task正确移动到lambda?

我一直试图将packaged_task捕获到lambda中,但是我失败了。我完全了解移动语义学,也读过一些现代文学,我当时以为我什么都没错过。我也有...

回答 1 投票 2

我如何对移动操作进行单元测试(默认)?

当我尝试为仅移动类编写单元测试时遇到了这个问题。我不知道如何编写测试来检查移动操作是否确实移动了类的数据成员。我在这里包括了...

回答 1 投票 0

std :: move on boost :: asio :: ip :: tcp :: socket

我正在阅读《用C ++进行功能编程》和第12章的源代码。https://gitlab.com/manning-fpcpp-book/code-examples/-/blob/master/chapter-12/bookmark- service / service.cpp#L19在...

回答 1 投票 0

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