返回信息流假如我定义了一个类:
class person
{
public:
void fun(string sh ,int n)
{
name=sh;
age=n;
}
string name;
int age;
friend ostream& operator << (ostream& out, const ShuKu &sh) ;
}
现在我定义了一个容器:
vector<ShuKu>list;
并且我已经向这个容器里面输入了两组数据,也就是list[0]和list[1]现在都有值.
我又定义了一个重载运算:
ostream& operator << (ostream& out, const ShuKu &sh)
{
out<<sh.name<<sh.age;
}
现在我想输出list[0]里面的name和age,该怎样写呢?
这是一条镜像帖。来源:北邮人论坛 / cpp / #26059同步于 2009/7/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
请教:在c++中容器和重载运算符<<的一个问题?
Parid
2009/7/10镜像同步4 回复
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
cout<<list[0];就行了吧。
比如list<ShuKu>a;
那么cout<<a[0];就行
【 在 Parid (Parid) 的大作中提到: 】
: 假如我定义了一个类:
: class person
: {
: ...................
你不是用了么=。=你不重载这一下怎么输出类啊。
容器只是一个存储的地方,输出容器里的东西它不提供运算符的。
【 在 Parid (Parid) 的大作中提到: 】
: 我知道可以这样,可是老师要求要用重载符<<打印类里面的东西啊