全局运算符重载函数例

来源:互联网 发布:潍坊网络部主管招聘 编辑:程序博客网 时间:2024/05/16 12:57

/*

我写他的目的是以防以后忘记这些基础的东西,每隔一段时间就过一遍程序,这比看书有效率

*/

#include <iostream>
using namespace std;
class point
{
 private:
         int x;
         public:
                point();
                point(int);
//必须声明为友元不然不能调用私有成员x 除非公有函数int Getx();
                friend int operator ! (point&);
                friend int operator + (point&,int);
                     
};
point::point():x(100){}
point::point(int a):x(a){}
int operator !(point &obj)
{
 if(obj.x==0)return 0;
 else
 return 1;   
}
int operator +(point &obj,int i)
{
 int add;
 add=obj.x+i;
 return add;   
}
int main()
{point obj_1(9);
 cout<<obj_1+10<<endl;
 cout<<!obj_1<<endl;
 system("pause");
 return 0;   
}

结果为:19和1