设为首页
收藏本站
开启辅助访问
切换到窄版
登录
立即注册
中问网首页
我的收藏
站长博客
搜索
搜索
本版
帖子
用户
第一问答网
»
论坛
›
中问网
›
问答
›
C++运算符重载的问题
返回列表
发新帖
C++运算符重载的问题
[复制链接]
11
|
4
|
2009-8-17 16:32:56
|
显示全部楼层
|
阅读模式
很简单因为你的构造函数有参数,而你创建对象的时候没有用到参数因为一旦你自己定义了一个构造函数后,原本的默认构造函数就失效了我提供两个方法:1:自己写一个无参构造函数2:在原来构造函数设置默认参数值 sample(int a=0); 你的错误貌似已经不是程序问题了
回复
使用道具
举报
千问
|
2009-8-17 16:32:56
|
显示全部楼层
sampleoperator +(const sample& s1,const sample & s2){ sample s(0);
// 此处应为构造函数提供参数 s.value=s1.value+s2.value; cout<<"定义双目重载运算符+"<<endl; return s;}或者是在你的构造函数中填写一个带默认形参值的参数,值为0即可,声明如下:sample(int a = 0);在实现文件中不用修改。参考资料:原创
已赞过
已踩过<
回复
使用道具
举报
千问
|
2009-8-17 16:32:56
|
显示全部楼层
sample s;是什么?这个类里面没有默认构造函数,无法这么调用,定义默认构造函数就解决了.
回复
使用道具
举报
千问
|
2009-8-17 16:32:56
|
显示全部楼层
缺少默认的构造函数,class sample{private: int value;public: sample(int a);。。。添加一个默认构造函数就可以了。sample(){}调试通过了的。
回复
使用道具
举报
千问
|
2009-8-17 16:32:56
|
显示全部楼层
楼主是用vc6.0编译的么? 应该是编译器的问题
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
千问
主题
0
回帖
4882万
积分
论坛元老
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
论坛元老, 积分 48824836, 距离下一级还需 -38824837 积分
积分
48824836
加好友
发消息
回复楼主
返回列表
问答
热门排行