标签:转换 结束 cas 指针 const 问题 使用 new 强制转换
static_cast<T&&>(lvalue);
#include <iostream> using namespace std; class Moveable{ public: Moveable():i(new int(3)) {} ~Moveable() { delete i; } Moveable(const Moveable & m): i(new int(*m.i)) { } Moveable(Moveable && m):i(m.i) { m.i = nullptr; } int* i; }; int main() { Moveable a; Moveable c(move(a)); // 会调用移动构造函数 cout << *a.i << endl; // 运行时错误 }
标签:转换 结束 cas 指针 const 问题 使用 new 强制转换
原文地址:https://www.cnblogs.com/Stephen-Qin/p/9082190.html