标签:meta 概念 enc 实现 include 标识符 keyword 拷贝 load
指定该类型的实例可以从一个右值实参构造
T类型的右值表达式rv
任意标识符 u
下列表达式必须合法且拥有指定的效果:
T u = rv; //u 的值等于 rv 在初始化前的值。rv 的新值未指明。
T(rv); //T(rv) 的值等于 rv 在初始化前的值。rv 的新值未指明。
类不必为满足此要求而实现移动构造函数:接收 const T& 实参的复制构造函数也能绑定右值表达式。
移动构造函数或者移动复制运算符被定义为删除
有类成员为const或引用
定义了自己的拷贝构造函数且未定义移动构造函数,或者有类成员未定义自己的拷贝构造函数且编译器不能为其合成移动构造函数
该类型的实例可以从左值表达式中构造
给定:
v为const T或T类型的左值表达式或const T类型的右值表达式
任意标识符u
下列表达式必须合法且拥有其指定的效果
T u = v; //u的值等价于v的值,不修改v的值
T(v); //同上
将拷贝构造函数置为delete
该类型的实例可以从右值实参赋值
t = v; //t的值等于v的值,v的值不更改,赋值表达式返回(T&)t
对应的是:
Base &operator =(Base &&b)
该类型的实例可从左值表达式复制赋值
t = v; //t 的值等价于 v 的值, v 的值不更改。
对应的是:
Base &operator =(Base &b)
标签:meta 概念 enc 实现 include 标识符 keyword 拷贝 load
原文地址:https://www.cnblogs.com/HadesBlog/p/12730857.html