bja*_*fly 13 nullptr move-semantics c++11
我遇到了以下情况.在nullptr上进行移动有什么好处吗?我假设它基本上为Node*分配一个零,所以我不确定在这里做一个移动是否有任何好处.有什么想法吗?
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;
};
Run Code Online (Sandbox Code Playgroud)
Cas*_*sey 27
nullptr是通过定义一个rvalue(C++ 11§2.14.7p1),所以std::move(nullptr) 是 nullptr.它没有任何效果,就像将任何其他rvalue文字传递给std::move例如std::move(3)或者std::move(true).
| 归档时间: |
|
| 查看次数: |
5855 次 |
| 最近记录: |