C++中运算符重载详解

来源:互联网 发布:linux grub无法用命令 编辑:程序博客网 时间:2024/04/29 19:03

一、运算符重载的格式

运算符重载为类的成员函数的一般格式为:

    
<函数类型> operator <运算符>(<参数表>)

    
{

     
<函数体>

    }

二.可以重载的运算符(运算符的限制)

1.可用作重载

    算术运算符:+,-,*,/,%,++,--;
    位操作运算符:&,|,~,^,<<,>>
    逻辑运算符:!,&&,||;
    比较运算符:<,>,>=,<=,==,!=;
    赋值运算符:=,+=,-=,*=,/=,%=,&=,|=,^=,<<=,>>=;
    其他运算符:[],(),->,,(逗号运算符),new,delete,new[],delete[],->*。

2.不允许重载:

    . , .* , :: , ?:

三.可重载操作符的操作数必须是一个类类型(参数表的限制)

如下面格式将是错误的:
int operator+ (int,<span style="font-family: Arial;">int</span>){return 15;}

正确的做法:
int operator+ (Student,Student){return 15;}
其中Student是一个自定义类

备注:注意,并没有函数类型的限制
0 0
原创粉丝点击