1.引用string標頭擋寫法
#include<string>
using std::string;
2.引用iostream標頭檔
#include<iostream.h>
3.friend 和string衝突 引用文章連結: VC6冲破friend和cstring类的冲突,让friend和cstring类共存
因#include<iostream.h>中string没有重載"<<"操作符號。 c_str().是用來把string類型的數據轉化成char * ,使得#include< iostream.h >中的
"<<"能對char * 正確輸出。
<例>
#include <iostream.h>
#include <string>
using std::string;
class CA
{
public:
CA(){}
CA(string n,int a):name(n),age(a){}
friend ostream & operator << (ostream &,CA &);
private:
string name;
int age;
};
ostream & operator <<(ostream & output,CA & ca)
{
output<<"name:"<<ca.name.c_str()<<endl; //注意這裡的修改
output<<"age:"<<ca.age<<endl;
return output;
}
int main()
{
CA cc("luckydog",1);
cout<<cc<<endl;
return 0;
}
To Be Continued...