亮吓你的眼之拷贝构造函数也能重载
c++吧
全部回复
仅看楼主
level 10
直接上代码,输出的结果是 0 1;
#include <iostream>
using namespace std; class A
{
public:
int x;
A()
{
x=0;
} A(A &a) //重载1
{
x=a.x;
} A(const A & a) //重载2
{
x=a.x+1;
}
};
int main()
{
A a;
A b=a;
cout<<b.x<<endl; //执行的是A(A &a) 这个拷贝构造函数
const A c;
A d=c;
cout<<d.x<<endl; //执行的是A(const A & a) return 0;
}
@元芳,你怎么看
2012年12月28日 08点12分 1
level 11
我怎么不记得const能做重载依据@candy76041820 。。。
2012年12月28日 08点12分 2
level 3
你直接用第二个好了,引用或指针的参数加上const能扩大使用范围不影响使用 除了你想作为返回值的时候
2012年12月28日 08点12分 3
level 5
本来就可以,有什么稀奇的。。
2012年12月28日 09点12分 4
level 11
[打酱油]
2012年12月28日 09点12分 5
level 6
[真棒]
2012年12月28日 10点12分 8
level 12
为什么不能重载。。
2012年12月28日 11点12分 10
level 12
语法可以+1
2012年12月28日 13点12分 11
1