friend ostream& operator <<(ostream &os,xinxi& t);
这句话定义了一个类的友元函数,这个友元函数超载了“<<”运算符。那么以后就可以直接使用cout<<来输出xinxi这个类的对象了。
同时这个函数的返回类型是ostream的引用,这保证了“<<”的连用,也就是:
xinxi A,B;
cout<<A<<B;
之所以使用友元函数超载而不使用成员函数来超载,是因为成员函数超载需要使用对象来击活,但是使用cout<<时,对象是出现在右边的,所以无法用对象来击活,而只能采用友元函数。