请问构造一个类,可以用cout输出他的某些成员应该重载哪个运算符??
rt
谢谢
问题点数:20、回复次数:5Top
1 楼demo001(给分是我最大的快乐)回复于 2004-09-03 09:55:56 得分 0
upTop
2 楼steedhorse(晨星)回复于 2004-09-03 09:57:50 得分 5
重载全局的"<<",左边是ostream,右边是你的类。当然,同时要声明成你的类的友元才好。Top
3 楼DiabloWalkOnTheEarth(我想到个绝妙的昵称,只是地方太小,写不下)回复于 2004-09-03 09:59:51 得分 5
同意楼上,大概就 ostream& operator<< ( ostream& os , yourobj& obj );Top
4 楼micropentium6(小笨|曾经的美好)回复于 2004-09-03 10:07:02 得分 10
to steedhorse
老大,有年头没看见你了,也不和我联系,哼^_^
#include "stdafx.h"
#include <iostream>
#include <stdlib.h>
#include <string>
using namespace std;
class A
{
friend ostream& operator<<(ostream& os,A& a);
private:
void print(ostream& os)
{
string str="print";
os<<str<<endl;
}
public:
A()
{
}
};
ostream& operator<<(ostream& os,A& a)
{
a.print(os);
return os;
}
int _tmain(int argc, _TCHAR* argv[])
{
A a;
cout<<a<<a;
system("pause");
return 0;
}Top
5 楼demo001(给分是我最大的快乐)回复于 2004-09-03 10:15:13 得分 0
ok!
3x!!!Top




