国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > C++ > 正文

C++運(yùn)算符重載基礎(chǔ)

2019-11-11 03:58:22
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

運(yùn)算符重載的規(guī)則

為什么要操作符重載

在C++編輯器中,如果你定義的一個(gè)類型是一個(gè)基礎(chǔ)類型,那么我們進(jìn)行一個(gè)運(yùn)算的話完全沒有任何的問(wèn)題比如,int a,b,c; c=a+b;這里的加號(hào)和我們平常理解的加號(hào)意義是完全一樣的,但是如果是類的話了,我們想做一個(gè)類的加減的話,這樣就不行了。所以我們才用到運(yùn)算符的重載達(dá)到我們的目的。

規(guī)則

可以重載的運(yùn)算符

+ - * / %^ & |        ~  ! =< > += -= *=/= %    ^=&= |= << >> >>= <<=  ==  !=    <=>= && || ++ --->* ‘ ->  []  () new  delete new[]delete[]

不可以重載的運(yùn)算符

. :: .* ?: sizeof由于可以重載的運(yùn)算符很多,所以我們只需要記住不可以重載的運(yùn)算符。

重在運(yùn)算符的限制

1.不改變運(yùn)算符的優(yōu)先級(jí)2.不改變運(yùn)算符的結(jié)合性3.不改變運(yùn)算符所需要的操作數(shù)4.不能創(chuàng)建新的運(yùn)算符

語(yǔ)法

類型   類名  ::  Operator  op ( 參數(shù)表 ){ // 相對(duì)于該類定義的操作}

代碼

對(duì)著代碼騎自行車
#include "iostream"using namespace std;class Complex{public:	Complex(int a, int b);	~Complex();		void PRintCmp()	{		cout << "a=" << a << "b=" << b << endl;	}public:	int a;	int b;};Complex::Complex(int a, int b){	this->a = a;	this->b = b;}Complex::~Complex(){}Complex add(Complex &c1, Complex &c2){	Complex c3(c1.b + c2.a, c1.b + c2.b);	return c3;}//運(yùn)算符重載對(duì)+號(hào)的重載Complex operator+(Complex &c1, Complex &c2){	Complex c3(c1.a + c2.a, c1.b + c2.b);	return c3;}void main(){	Complex c1(1, 2), c2(2, 3);	//Complex c3 = add(c1, c2);	Complex c3 = c1 + c2;	c3.printCmp();	/*int a = 10;	int b = 11;	int c = a + b;	cout << c << endl;*/	system("pause");}定義了一個(gè)類,類要對(duì)相應(yīng)的數(shù)據(jù)進(jìn)行相加減,這樣我們看到c3=c1+c2如果沒有操作符重載的話,只能通過(guò)add這個(gè)方法進(jìn)行加減,如果有了操作符重載以后我們發(fā)現(xiàn)兩個(gè)類直接進(jìn)行加減,我們就可以直接得到對(duì)應(yīng)的結(jié)果,這個(gè)很方便。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 商丘市| 马山县| 肥城市| 雅安市| 永丰县| 奎屯市| 民和| 沙湾县| 台州市| 宁化县| 永福县| 凤冈县| 韶关市| 镇平县| 集安市| 连城县| 南漳县| 明水县| 晋江市| 青海省| 鸡东县| 穆棱市| 肇州县| 来安县| 西峡县| 固始县| 泗阳县| 孝义市| 札达县| 来宾市| 商水县| 哈巴河县| 枣强县| 灵台县| 栖霞市| 巫山县| 比如县| 旌德县| 金溪县| 荣成市| 米泉市|