istream &operator>>(istream &stream, Advertisement &a);重载>>的问题.初学者的难题.进来看看.

love830315 2004-11-22 12:38:48
istream &operator>>(istream &stream, Advertisement &a);重载>>的问题.
这是对于这个函数的要求:
operator>>
This method reads an Advertisement object from an input stream. The advertisement should be input the following data members of the class in the following form.
title \n email \n quantity \n start-date \n close-date \n body \n
其中start-date,close-date是一个类.关于它的输入流重载函数已做好..
Information corresponding to the number private data member is not read from the input stream.
注意流的格式..主要是怎么样把流里面的用\n分隔掉的字符串分别赋给相应的值.
...全文
251 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
love830315 2004-11-22
  • 打赏
  • 举报
回复
这位大大,是不是也在学SSD5啊.呵呵,谢谢.
Mr-Chen 2004-11-22
  • 打赏
  • 举报
回复
gz
love830315 2004-11-22
  • 打赏
  • 举报
回复
不行啊.\n取不到,郁闷..我干脆不判断\n了,直接赋值算了.郁闷.
呵呵,试了一下竟然成功了,FUCK.有哪位大大再出手相救下.如果非得要取\n那该怎么办呢?
stupidfish2004 2004-11-22
  • 打赏
  • 举报
回复
istream &operator>>(istream &stream, Advertisement &a){
string til;
stream>>til;
a.setTitle(til);

char temp1;
stream>>temp1;
if(temp1!='\n')
cout<<"format error1"<<endl;

string emai;
stream>>emai;
a.setEmail(emai);

char temp2;
stream>>temp2;
if(temp2!='\n')
cout<<"format error2"<<endl;

int quan;
stream>>quan;
a.setQuantity(quan);

char temp3;
stream>>temp3;
if(temp3!='\n')
cout<<"format error3"<<endl;

Date sta;
stream>>sta;
a.setStart(sta);

char temp4;
stream>>temp4;
if(temp4!='\n')
cout<<"format error4"<<endl;

Date clo;
stream>>clo;
a.setClose(clo);

char temp5;
stream>>temp5;
if(temp5!='\n')
cout<<"format error5"<<endl;

string bod;
stream>>bod;
a.setBody(bod);

char temp6;
stream>>temp6;
if(temp6!='\n')
cout<<"format error6"<<endl;

return stream;

}
xuzheng318 2004-11-22
  • 打赏
  • 举报
回复
帮顶!

64,649

社区成员

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

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