64,283
社区成员
发帖
与我相关
我的任务
分享
class A{
void fun(); // fun是成员函数,void返回值,void参数
};
void A::fun() //A::fun A应该修饰fun 而不是修饰返回值
{
...
}
Test& Test::operator= (const Test&)
{
}
你把构造函数和重载赋值操作符函数都写成私有的,那每个传进去的该类型的参数,在运行到函数里面是都要创建一个副本,你用引用&就可以避免创建副本了,但是你如果返回该类型的结果,如果你返回的不是传进去的这个实例,就不可避免要调用构造函数新建一个实例并且返回,这时候你把构造函数设为私有,无法调用并实例化Test& Test ::operator= (const Test&)
{
//do something
return xxx;
}