zaijzhgh 发表于 2008-5-15 21:09

奇怪的operator<<

#include<iostream>
#include<string>
using namespace std;
class sales_item
{
public:
sales_item(){in = "in ";out = "out";} //default construct function
~sales_item(){}//destory function
friend ostream& operator<<(ostream&, sales_item&);
void display();
private:
string in;
string out;
};

void sales_item::display()
{
cout<<in<<" *** "<<out<<endl;
}
//重载>>操作符
ostream& operator<<(ostream& os, sales_item& item)
{
os<<item.in<<item.out<<endl;
return ostream;
}
int main(int argv, char** argc)
{
sales_item item;
item.display();
return 0;
}
编译的时候提示:'ostream' : illegal use of this type as an expression
编译工具:vc6.0 ,今天中午打上了SP5。

zaijzhgh 发表于 2008-5-15 21:22

晕死,刚才再看了一下,才知道打错了返回值,应该是:return os;才对,汗……太粗心了。

hjack 发表于 2008-5-15 23:04

错误提示是一个很重要的信息..

dongchenghuozi 发表于 2008-5-25 08:52

百分之九十以上的错误都是自己的大意

dongchenghuozi 发表于 2008-5-25 09:01

百分之九十以上的错误都是自己的大意
页: [1]
查看完整版本: 奇怪的operator<<