同一个类的两个对象能用“=”赋值吗
6个回答
展开全部
空类有6个默认函数,如下:
Empty(); // 缺省构造函数
Empty( const Empty& ); // 拷贝构造函数
~Empty(); // 析构函数
Empty& operator=( const Empty& ); // 赋值运算符
Empty* operator&(); // 取址运算符
const Empty* operator&() const; // 取址运算符 const
operator=是其中的一个,所以可以赋值,但是如果当你的成员变量中有指针成员,则赋值后的指针指向的内容将是未定义的
Empty(); // 缺省构造函数
Empty( const Empty& ); // 拷贝构造函数
~Empty(); // 析构函数
Empty& operator=( const Empty& ); // 赋值运算符
Empty* operator&(); // 取址运算符
const Empty* operator&() const; // 取址运算符 const
operator=是其中的一个,所以可以赋值,但是如果当你的成员变量中有指针成员,则赋值后的指针指向的内容将是未定义的
展开全部
没有重载等号操作符就不行,只能做到浅拷贝,只有在重载等号操作符的方法里才能指定赋值的具体动作
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看你自己有没有定义了,定义了就可以
追问
没有定义“operator =”的情况 可以吗? 会有默认的定义吗?
追答
去试一下就知道。纸上得来终觉浅的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询