C 中 引用 做引數和返回值

2021-06-23 09:27:13 字數 534 閱讀 3046

例如,我自己實現乙個字串類 cdstring ,其中有兩個運算子過載函式

c/c++ code?

1

2

cdstring & operator = (constcdstring& other);

cdstring operator + (constcdstring& other);

請問  1、兩個返回有什麼區別?

2、引數為什麼要& ,有什麼好處?

operator= 返回 cdstring &,這樣可以支援連續賦值。

const cdstring& other,引數用const引用,主要是避免引數拷貝帶來的效能損耗。

const引用型引數和過載賦值運算子時返回引用,都差不多是c++的慣用法了吧。

乙個是效率.

乙個是可以連著呼叫. (str1 = str2) = str3; 這種.

引用做引數與引用做返回值

一 引用做引數 引用做引數時,和c語言中的 傳址 是乙個道理,即通過函式來改變身處主函式中的變數。例 void fun int b int main 執行fun函式後,主函式中的整型變數a的值就變為了22,因為a和b實際上是同一處空間但是有了不同的名字。可以拓展到交換主函式中變數的值 void fu...

引用引數,引用返回值

函式形參詩引用,程式輸出如程式最後的注釋,表明引用s代表的是物件s2.函式中的引用 includeusing namespace std class sample sample sample a x a.x int getx 形參為引用 void disp sample s void disp sa...

027 C 引用做函式返回值使用

include using namespace std 通過使用引用來替代指標,會使c 程式更容易閱讀和維護。c 函式可以返回乙個引用,方式與返回乙個指標類似。當函式返回乙個引用時,則返回乙個指向返回值的隱式指標。這樣,函式就可以放在賦值語句的左邊。double values templateint...