小编And*_*ndy的帖子

带有rvalue deleter的unique_ptr构造函数返回null?

这是我用来理解以下行为的代码片段std::unique_ptr:

std::default_delete<int> d;
std::unique_ptr<int> u1;
std::unique_ptr<int> u2 (nullptr);
std::unique_ptr<int> u3 (new int);
std::unique_ptr<int> u4 (new int, d);
std::unique_ptr<int> u5 (new int, std::default_delete<int>());
std::unique_ptr<int> u6 (std::move(u5));
std::unique_ptr<int> u7 (std::move(u6));
std::unique_ptr<int> u8 (std::auto_ptr<int>(new int));

std::cout << "u1: " << (u1?"not null":"null") << '\n';
std::cout << "u2: " << (u2?"not null":"null") << '\n';
std::cout << "u3: " << (u3?"not null":"null") << '\n';
std::cout << "u4: " << (u4?"not null":"null") << '\n';
std::cout << "u5: " << (u5?"not null":"null") << '\n';
std::cout …
Run Code Online (Sandbox Code Playgroud)

c++ unique-ptr c++11

3
推荐指数
1
解决办法
77
查看次数

标签 统计

c++ ×1

c++11 ×1

unique-ptr ×1