C 基礎4(運算子過載)

2021-10-25 19:44:31 字數 1214 閱讀 4748

可以重定義或過載大部分 c++ 內建的運算子。這樣,就能使用自定義型別的運算子。

過載的運算子是帶有特殊名稱的函式,函式名是由關鍵字 operator 和其後要過載的運算子符號構成的。

使用全域性函式

使用類的成員函式

//1、+ 號運算子過載(使用全域性函式)

#include

using

namespace std;

class

vector

vector()

intgetx()

intgety()

void

setx()

void

sety()

vector

(const vector &vector)

//減號內部呼叫

vector operator-(

const vector &vector)

//++運算子過載

//++x

void

operator++(

)// x++;

void

operator++(

int)

// << 運算子 友元friend

friend ostream &

operator

<<

(ostream &ostream,

const vector &vector)};

//外部呼叫需要兩個引數

vector operator

+(vector vector1, vector vector2)

intmain()

運算子

class

array

~array()

}array

(const array &array)

}void

set(

int index,

int value)

intget

(int index)

intgetsize()

intoperator

(int index)};

void

println

(array array)

}int

main()

C 基礎(4) 運算子過載

二.使用過載運算子 c 預定義中的運算子的操作物件只侷限於基本的內建資料型別,但是對於我們自定義的型別 類 是沒有辦法操作的。但是大多時候我們需要對我們定義的型別進行類似的運算,這個時候就需要我們對這麼運算子進行重新定義,賦予其新的功能,以滿足自身的需求。運算子過載的實質就是函式過載或函式多型。運算...

C 基礎 運算子過載

運算子過載 返回值型別 類名 operator過載運算子 引數列表 include using namespce std class complex ostream operator ostream out,const complex c 過載輸出流 class complex complex pu...

C 基礎 運算子過載

一 運算子過載 1.類是使用者自定義的資料型別,使用運算子過載可以i實現如下邏輯 1 物件1 物件2 物件3,如描述複數的類,描述字串的類。2 提高程式的可讀性。2.過載賦值運算子 1 如果乙個類沒有提供賦值運算函式,則預設提供乙個。2 如果乙個類提供了拷貝建構函式,那麼也要提供乙個過載的賦值運算函...