首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

初学C++,在做运算符重载的时候遇到的有关问题,欢迎大家指点

2012-08-03 
初学C++,在做运算符重载的时候遇到的问题,欢迎大家指点C/C++ codefraction.obj : error LNK2001: unresolv

初学C++,在做运算符重载的时候遇到的问题,欢迎大家指点

C/C++ code
fraction.obj : error LNK2001: unresolved external symbol "class F __cdecl operator/(class F const &,class F &)" (??K@YA?AVF@@ABV0@AAV0@@Z)

各位大侠,这个错误的原因是什么?怎么解决啊?

[解决办法]
operator/(class F const &,class F &) 声明中第二个参数少了一个const
[解决办法]
你在类中的声明时这样的:
friend F operator+(const F& a,F& b);
而实现代码确实这样的:
F operator+(const F& a, const F& b)

第二个参数有问题,声明中缺少const修饰
[解决办法]
friend F operator+(const F& a,const F& b); 
friend F operator-(const F& a,const F& b);
friend F operator*(const F& a,const F& b);
friend F operator/(const F& a,const F& b);


另外,怎么分母也不能为0吧。
你直接就给分母赋值0了。
每次使用分母都要判断不为0。

热点排行