我在重载流插入运算符“<<”和重载流提取运算符“>>”遇到了6个错误,请各位老师指教,谢谢
- C/C++ code
#include <iostream> using namespace std; class CTime { private: unsigned short int hour; // 时 unsigned short int minute; // 分 unsigned short int second; // 秒 public: CTime(int h=0,int m=0,int s=0); //重载流插入运算符“<<” friend ostream& operator << (ostream&,CTime&); //重载流提取运算符“>>” friend istream& operator >> (istream&,CTime&);};CTime::CTime(int h,int m,int s) { hour=h; minute=m; second=s; } //比较运算符(二目)的重载 ostream& operator << (ostream&output,CTime&c){ output<<c.hour <<":"<<c.minute <<":"<<c.second <<endl; return output;} istream& operator >> (istream& input,CTime & c){ cout<<"请输入时间:(以aa bb cc的格式输入)"; input>>c.hour>>c.minute>>c.second; return input;}void main() { CTime t1(8,20,25),t2(11,20,50),t; int n; cin>>t1>>t2; cout<<"t1为:"; cout<<t1; cout<<"t2为:"; cout<<t2; system("PAUSE"); }
[解决办法]
vc6.0吗?
如果是。 iostream 换为 iostream.h 同时去掉using namespace std;