首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

c++重载运算符解决方法

2012-06-15 
c++重载运算符operator()重载怎么用它的用处是啥[解决办法]比如要实现2个类对象a、b的加法,如何做?就是

c++重载运算符
operator<<()重载<<怎么用 它的用处是啥

[解决办法]
比如要实现2个类对象a、b的加法,如何做?
就是operator +
[解决办法]

C/C++ code
#include <iostream>using namespace std;class cexample{    int x,y;public:    cexample(int a=0,int b=0):x(a),y(b){}    friend ostream& operator<<(ostream& out,cexample &obj);};ostream& operator<<(ostream&out ,cexample &obj){    out<<obj.x<<"  "<<obj.y<<endl;    return out;}int main(){    cexample obj(10,20);    cout<<obj;}
[解决办法]
C/C++ code
#include <iostream>#include <string>#include <fstream>using namespace std;class A{public:        string a;};ostream & operator << (ostream & os,const A classA){        os<<classA.a;        return os;}class B{public:        string b;};int main(){        A classA;        B classB;        classA.a="123";        classB.b="456";        cout<<classA<<endl; //这里不会报错        cout<<classB<<endl; //这里会报错} 

热点排行