函数返回应该是个右值吧,为啥能放在左边(红色标示的部分)?_C/C++_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > C/C++ > 函数返回应该是个右值吧,为啥能放在左边(红色标示的部分)?

函数返回应该是个右值吧,为啥能放在左边(红色标示的部分)?

 2010/11/19 9:18:39  daojin  http://daojin.javaeye.com  我要评论(0)
  • 摘要:1楼classA1{public:A1(){std::cout<<"A1()"<<std::endl;}A1(constA1&a1){std::cout<<"A1(constA1&a1"<<std::endl;}A1&operator=(constA1&a1){std::cout<<"operator=(constA1&a1)"<<std::endl;}int*pi;};A1GetA
  • 标签:函数返回
1楼
class A1
{
public:
    A1()
    {
        std::cout<<"A1()"<<std::endl;
    }
    A1(const A1& a1)
    {
        std::cout<<"A1(const A1& a1"<<std::endl;
    }
    A1& operator=(const A1& a1)
    {
        std::cout<<"operator=(const A1& a1)"<<std::endl;
    }
    int* pi;
};
A1 GetA()
{
    std::cout<<" GetA() begin"<<std::endl;
    A1 a1;
    std::cout<<" GetA() end"<<std::endl;
    return a1;
} 
int main()
{
?? A1 a1;
?? GetA() = a1;
}
发表评论
用户名: 匿名