移动语义 问答列表

什么是移动语义?

作者:dicroce 提问时间:6/24/2010

我刚刚听完了软件工程电台播客对Scott Meyers关于C++11的采访。大多数新功能对我来说都很有意义,除了一个。我仍然没有得到移动语义......它到底是什么?...

什么是 std::move(),什么时候应该使用它?

作者:Basilevs 提问时间:8/5/2010

这是什么? 它有什么作用? 什么时候应该使用? 良好的链接是值得赞赏的。...

未调用 C++11 移动构造函数,默认构造函数首选

作者:emesx 提问时间:10/27/2012

假设我们有这个类: class X { public: explicit X (char* c) { cout<<"ctor"<<endl; init(c); }; X (X& lv) { co...

std::vector 初始化 移动/复制元素的构造函数

作者:vsoftco 提问时间:7/17/2014

我有这段代码: #include <iostream> #include <vector> using namespace std; class Foo{ public: Foo() noex...

initializer_list和移动语义

作者:fredoverflow 提问时间:11/19/2011

我是否可以将元素移出?std::initializer_list<T> #include <initializer_list> #include <utility> template<typena...

了解 std::move 和 std::unique_ptr 中的所有权转让 C++

作者:Sami 提问时间:6/26/2023

我已经编写了两组函数,F1/test1 和 F2/test2,我正在尝试了解这些函数中 std::move 的行为和 std::unique_ptr 所有权转移的差异。代码如下: void F1(s...

只需添加什么都不做的析构函数会导致编译错误(围绕 std::move),为什么?

作者:javaLover 提问时间:12/6/2016

在我学习的过程中,我发现了一个奇怪的问题。std::move 如果我只添加一个对完美程序不做任何事情的析构函数,我会得到一个编译错误。 #include <iostream> using name...

移动语义:执行 std::move 时不执行构造函数和赋值

作者:Kevinkun 提问时间:7/23/2021

#include <iostream> #include <utility> #include <vector> class Node { public: int data; Node* pre...

std::move 是否保证 vector.data() 不会改变?

作者:SupAl 提问时间:9/12/2023

请考虑以下代码: #include <vector> #include <utility> #include <cstdint> #include <bit> template <typename...

编译器可以省略特定数据成员的副本吗?

作者:TwistedBlizzard 提问时间:8/30/2023

获取此代码: struct Bar { //has non-default copy-constructor Bar() = default; Bar(const Bar&) {} }; st...


共32条 当前第1页