C++标准规定,对于二元运算符的重载,第一个参数必须是自己
class CA
{
public:
CA()
{};
CA(int a)
:m_a(a){};
bool operator==(int b)//==是二元运算符,第一个参数是自己:即CA,(默认的)
//,第二个参数int b
{
return m_a==b;
}
int m_a;
};
使用例子:
TRACE("%d/n",CA(1)==2);
用这种方式重载时,操作符左右两参数是不能,交换的,
如:TRACE("%d/n",2==CA(2));//这种写法编译都通不过
要使第二种情况也能工作,就必须重新重载。
class CA
{
public:
CA()
{};
CA(int a)
:m_a(a){};
friend bool operator==(int b,CA& a) //1
{
return a.m_a==b;
};
bool operator==(int b)//==是二元运算符,第一个参数是自己:即CA,(默认的)
//,第二个参数int b //2
{
return m_a==b;
}
int m_a;
} ;
比较一下//1和//2
当然你可以把//2 定义为
friend bool operator==(CA & a ,int b)//==是二元运算符,第一个参数是自己:即CA,(默认的)
//,第二个参数int b
{
return a.m_a==b;
}
分享到:
相关推荐
C++单目运算符重载 单目运算符只有一个操作数,如!a,-b,&c,*p,还有最常用的++i和–i等。重载单目运算符的方法与重载双目运算符的方法是类似的。但由于单目运算符只有一个操作数,因此运算符重载函数只有一个参数...
如运算符重载和函数重载 字符串连接,+=运算符重载 求子串: 左边几个字符,,, Left(int nCount) 右边几个,, Right(int nCount) 某个位置开始的几个字符 Mid(int nPos,int nCout) 2..进一步熟悉掌握对类的构造...
定义一个二维方阵类 matrix。通过重载二元运算符“+”、“-”、“*”和一元运算符“~”, 来实现矩阵加、矩阵减、矩阵乘以及矩阵转置。
详细介绍 C++运算符重载 的PPT 文中部分内容: 下标运算符“[ ]”重载 C++把下标运算符[ ]看成一个双目运算符,其操作数为<基本表达式>和<表达式>,对应的运算符为operator[ ],必须重载为一个成员函数。对于下标...
请定义一个Point类,将前置++和后置++运算符重载为成员函数,实现成员变量m_x和m_y的加一操作 同时重载流插入运算符,实现对Point类对象的格式化输出。例如 Point p; cout; 输出结果为: (0,0) 请根据给定的main...
C++运算符重载:赋予运算符另一种作用,实现自定义类型的运算C++运算符重载内容: 1.友元重载 2.类重载 3.输入输出流重载
主要是C++中,运算符重载的编写的实验,环境VS2010,内容很基本,与类相关
C++程序设计实验——运算符重载,涉及单目、双目运算符的重载
C++程序设计课件 第十章 运算符重载 10.1 什么是运算符重载 10.2 运算符重载的方法 10.3 重载运算符的规则 10.4 运算符重载函数作为类成员函数和友元函数 10.5 重载双目运算符 10.6 重载单目运算符 10.7 重载流...
这个是使用C++是实现的矩阵基本运算,使用了运算符重载技术和动态生成数组技术!
此课件内容包括: 1 运算符 2 运算符重载概述 3 运算符重载的两种形式(重点) 运算符是代表某种运算功能的符号。 课件中讲解的实例也在些文件中。
C++允许重载的运算符和不允许重载的运算符 ...C++对运算符重载定义了如下几条规则。 1) C++不允许用户自己定义新的运算符,只能对已有的C++运算符进行重载。 例如,有人觉得BASIC中用“**“作为幂运算符很方便
c++中,有一种集合类运算符重载的算法,该示例程序中提供了很多的重载类型。
C++ 上课/复习ppt运算符重载.pptx
因此,运算符重载的目的是设置C++语言中的某一运算符,让它们之间并不冲突,C++语言会根据运算符的位置辨别应使用哪一种功能进行运算。可见,运算符重载的优点是允许改变使用于系统内部的运算符的操作方式,以适应...
C++程序,利用运算符的重载在VC下编译。
面向对象C++:ch05 运算符重载及多态.ppt
主要介绍了C++语言中的二元运算符和赋值运算符,文中列出了可重载的运算符列表,需要的朋友可以参考下
参考“黑马程序员”c++ 课程 递增运算符重载 如有侵权请联系删除 本系列文件: 递增运算符重载 赋值运算符重载 关系运算符重载 函数调用运算符重载 加号运算符重载 左移运算符重载 供和我一样的c++新手参考,大家...