gpt4 book ai didi

c++ - 非生成的特殊成员函数与删除的特殊成员函数

转载 作者:行者123 更新时间:2023-11-30 05:28:33 30 4
gpt4 key购买 nike

<分区>

这会编译并调用复制构造函数:

struct foo {
foo() = default;
foo(const foo&) { cout << "copy ctor!" << endl; }
//foo(const foo&&) = delete;
};

int main() {
foo a;
foo b(move(a));

这不编译:

struct foo {
foo() = default;
foo(const foo&) { cout << "copy ctor!" << endl; }
foo(const foo&&) = delete;
};

int main() {
foo a;
foo b(move(a));

我知道在第一种情况下为什么调用拷贝 - 没有生成 move 构造函数。但是为什么第二个 snipper 不能编译呢?它认为它会再次调用复制器。

here是在线编译器的链接

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com