[英]copy assignment operator definition
如果一个类具有const成员变量和一个引用成员变量,则该类的副本分配运算符的定义是什么,例如:
class ABC
{
int const i;
int & j;
int k;
public :
ABC() :k(40), i(10),j(k)
{}
};
常量对象和引用是不可分配的。 因此,具有此类成员的类将没有隐式赋值运算符。 可以定义自定义分配运算符,但不能以修改那些成员的方式定义。
如果您希望您的类具有一个副本分配,使引用可以引用与参数对象所引用的对象相同的对象,那么您就不能为此目的使用引用。
如果您希望您的类具有一个使const成员具有与参数对象相同的值的副本分配,则您根本无法使用const成员。
对于const,我们可以在const_cast的帮助下完成
修改const对象(借助const_cast
)具有未定义的行为。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.