新手C++问题求解释?

Dream_WHui 2013-01-05 06:38:55
#include<iostream>
using namespace std;
class Three{
public:
Three(int I1,int I2,int I3);
void print();
friend Three operator++(Three &);
friend Three operator++(Three &,int);
private:
int i1,i2,i3;
};
Three::Three(int I1,int I2,int I3){
i1=I1;
i2=I2;
i3=I3;
}
void Three::print(){
cout<<"i1: "<<i1<<"i2: "<<i2<<"i3: "<<i3<<endl;
}
Three operator++(Three &op,int){
op.i1++;
op.i2++;
op.i3++;
return op;
}
int main(){
Three obj1(4,5,6),obj2(14,15,16);
obj1.print();
++obj1;
obj1.print();
obj1++;
obj1.print();
cout<<endl;
obj2.print();
operator++(obj2);
obj2.print();
operator++(obj2,0);
obj2.print();
return 0;

}

编译:-Configuration: test - Win32 Debug--------------------
Linking...
test.obj : error LNK2001: unresolved external symbol "class Three __cdecl operator++(class Three &)" (??E@YA?AVThree@@AAV0@@Z)
Debug/test.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

test.exe - 2 error(s), 0 warning(s)

请问这是什么问题啊??求解释,谢谢。。
...全文
190 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dlcbs 2013-01-05
  • 打赏
  • 举报
回复
Dream_WHui 2013-01-05
  • 打赏
  • 举报
回复
引用 2 楼 ZLhy_ 的回复:
friend Three operator++(Three &); 应该你的这个函数没有实现 多说点,你的这两个函数都是返回的对象本身吧,你这样子的返回值是不能做左值的了。建议最好Three& 返回一个引用更好,还有有关i++和++i的区别的请看我的一篇博文:http://blog.csdn.net/zlhy_/article/details/8349……
谢谢 好的。
Dream_WHui 2013-01-05
  • 打赏
  • 举报
回复
引用 1 楼 lile1234_show 的回复:
friend Three operator++(Three &); 这个函数没有函数实现。 在此处operator++(obj2);调用
恩,是的,我没仔细看看。。谢谢了
疯狂的红豆 2013-01-05
  • 打赏
  • 举报
回复
friend Three operator++(Three &); 应该你的这个函数没有实现 多说点,你的这两个函数都是返回的对象本身吧,你这样子的返回值是不能做左值的了。建议最好Three& 返回一个引用更好,还有有关i++和++i的区别的请看我的一篇博文:http://blog.csdn.net/zlhy_/article/details/8349300 对你的实现也许有帮助吧
lee_鹿游原 2013-01-05
  • 打赏
  • 举报
回复
friend Three operator++(Three &); 这个函数没有函数实现。 在此处operator++(obj2);调用

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧