关于函数返回值的问题,新手求高手指点
程序代码:
#include<iostream> using namespace std; class A { public: A(){cout<<"执行构造函数\n";} A(A&){cout<<"执行复制构造函数\n";} ~A(){cout<<"执行析构函数\n";} void print(){cout<<"x="<<x<<endl;} void set(int i){x=i;} private: int x; }; const A & func(const A & one); int main() { A a; //A b=func(a); //这样写不行,提示说不能把 const class A转换成 class A // const A c=func(a); //这样写也不行,提示也说不能把 const class A转换成 class A,到底怎么回事? return 0; } const A & func(const A &one) { return one; }
//A b=func(a); //这样写不行,提示说不能把 const class A转换成 class A
// const A c=func(a); //那我这样写也不行,提示也说不能把 const class A转换成 class A,到底怎么回事?
我是用的是VC6.0的编程环境。