C语言c2679错误,编译链接errorC2679,操作符重载

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

RT自己写了一个TIME类和SMSDATA类

“Time.h”声明如下

#ifndef _TIME_H

#define _TIME_H

#include

using namespace std;

class TIME

{

private:

int hour;

int min;

int sec;

public:

friend ofstream& operator<< (ofstream& out, const TIME& time);

friend ifstream& operator>> (ifstream& in, TIME& time);

};

#endif

"TIME.cpp”如下

#include "TIME.H"

#include

using namespace std;

istream& operator>> (istream& in, TIME& time)

{

in >> time.hour;

in >> time.min;

in >> time.sec;

return in;

}

ostream& operator<< (ostream& out, const TIME& time)

{

out << time.hour << ':' << time.min << ':' << time.sec;

return out;

}

SMSDATA.h如下:

#ifndef _SMSDATA_H

#define _SMSDATA_H

#include "TIME.H"

//#include

#include

using namespace std;

class SMSDATA

{

private:

unsigned int day_id;

string send_nbr;

string acpt_nbr;

int send_nbr_oprt;

int acpt_nbr_oprt;

TIME send_time;

public:

friend ostream& operator<< (ostream& out, const SMSDATA& smsdata);

friend istream& operator>> (istream& in, SMSDATA& smsdata);

};

#endif

“SMSDATA.cpp”如下:

#include "SMSDATA.H"

#include "TIME.H"

#include

using namespace std;

istream& operator>> (istream& in, SMSDATA& smsdata)

{

in >> smsdata.day_id >> smsdata.send_nbr >> smsdata.acpt_nbr

>> smsdata.send_nbr_oprt >> smsdata.acpt_nbr_oprt >> smsdata.send_time;

return in;

}

ostream& operator<< (ostream& out, const SMSDATA& smsdata)

{

out << smsdata.day_id << smsdata.send_nbr << smsdata.acpt_nbr

<< smsdata.send_nbr_oprt << smsdata.acpt_nbr_oprt << smsdata.send_time;

return out;

}

这里在SMSDATA.cpp中提示错误“errorC2679”就是没有找到接受“TIME”类型的右操作数的运算符(或没有可接受的转换)

这里我就不懂了啊,我明明重载了TIME的输入输出<< 和>>啊,为啥这里不对呢?

可是当我把SMSDATA.cpp中提示错误的地方屏蔽掉,在main函数中

TIME time;

cin>>time;

cout <

这样就一定问题都没有而且能正确的运行,请问是什么问题呢???是我哪里的编译链接过程搞错了吗?还是怎样?求大侠指教啊!谢谢了!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值