gpt4 book ai didi

c++11 - 应该在 nullptr 赋值上使用 std::move 吗?

转载 作者:行者123 更新时间:2023-12-03 23:17:30 25 4
gpt4 key购买 nike

我遇到了以下情况。在 nullptr 上 move 有什么好处吗?我认为它基本上为 Node* 分配了一个零,所以我不确定在这里 move 是否有任何优势。有什么想法吗?

template <typename T>
struct Node
{
Node(const T& t): data(t), next(std::move(nullptr)) { }
Node(T&& t): data(std::move(t)), next(std::move(nullptr)) { }

T data;
Node* next;
};

最佳答案

nullptr根据定义是右值(C++11 §2.14.7p1),所以 std::move(nullptr)nullptr .它没有效果,就像将任何其他右值文字传递给 std::move 的情况一样。 ,例如,std::move(3)std::move(true) .

关于c++11 - 应该在 nullptr 赋值上使用 std::move 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18070498/

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