C 中的運算子過載函式基礎及其值返回狀態

2021-05-25 04:37:27 字數 660 閱讀 5147

運算子過載是c++的重要組成部分,它可以讓程式更加的簡單易懂,簡單的運算子使用可以使複雜函式的理解更直觀。

對於普通物件 來說我們很自然的會頻繁使用算數運算子讓他們參與計算,但是對於自定義類的物件來說,我們是無論如何也不能阻止寫出像下面的**一樣的程式來的 。

例子如下:  c++ ** class test

int main()

當然這樣的**是不能夠通過編譯的,c++對自定類的算術運算部分保留給了程式設計師,這也是符合c++靈活特性的。

在c++中 要想實現這樣的運算就必須自定義運算子過載函式,讓它來完整具體工作。

在這裡要提醒讀者的是,自定義類的運算子過載函式也是函式,你重 載的一切運算子不會因為是你自己定義的就改變其運算的優先順序,自定義運算子的運算優先順序同樣遵循與內部運算子一樣的順序。

除此之外 ,c++也規定了一些運算子不能夠自定義過載,例如.、::等等。 

上表是在c++中允許過載的運算子總表

下面我們來學習如何過載 運算子,運算子過載函式的形式是:

返回型別 operator 運算子符號 (引數說明)

運算子 過載函式的使用主要分為兩種形式,一種是作為類的友元函式進行使用,另一種則是作為類的成員函式進行使用。

下面我們先看一下作為類的 友元函式使用的例子:

c++ **

C 運算子過載函式基礎及其值返回狀態

運算子過載是c 的重要組成部分,它可以讓程式更加的簡單易懂,簡單的運算子使用可以使複雜函式的理解更直觀。對於普通物件來說我們很自然的會頻繁使用算數運算子讓他們參與計算,但是對於自定義類的物件來說,我們是無論如何也不能阻止寫出像下面的 一樣的程式來的。例子如下 class test intmain 當...

C 運算子過載函式之成員運算子過載函式

5.2.3 成員運算子過載函式 在c 中可以把運算子過載函式定義為某個類的成員函式,稱之為成員運算子過載函式。1.定義成員運算子過載函式的語法形式 1 在類的內部,定義成員運算子過載函式的格式如下 函式型別 operator 運算子 形參表 2 成員運算子過載函式也可以在類中宣告成員函式的原型,在類...

C 基礎 運算子過載

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