1樓:匿名使用者
int &func()這種形式叫做返回乙個引用,你說的函式是返回乙個one的引用,對one進行賦值就多了一種方式,one = 60;這時候one的值是60,你試試這樣:比如你在前面**中定義了乙個變數num = 0;執行func(num)之後num值變為60;在試試這樣:func(num) = 50;這個時候num的值就變成50了,如果函式前面不加&,func(num) = 50;會出錯的,加了&就代表返回乙個num的引用,可以func(num) = 乙個數字,來賦值
2樓:心依星動
返回型別是int&,而非&func,其實&並非型別的一部分,它是運算子即取址運算子,屬於字首運算。宣告變數時為了保持與取址作用用法的一致性,也放在變數前面。函式返回是誰的引用呢?
當然是one!!
若不加&,寫成int func (int &one);函式會多生成乙個臨時變數,即int temp=one是返回值,只是這個temp是不可見的,編譯器臨時生成的,你不能像其它變數一樣取它的位址。然後,再對temp進行操作,與one沒有任何關係了!
若加&,你對返回值的操作就相當於對one的操作,沒有臨時變數的生成,效率要高一些!
ps:兄弟啊,你竟然沒給分啊!!
3樓:
& 這個符號是用來修飾int的 說明返回的是乙個int &型別的資料
c語言新手求助,C語言程式設計 新手求助
因為 中用錯了輸出控制符,應該將printf f n num 中的 f改成 d才是。此程式中,已定義num為整型變數,而在後面的printf 輸出時,型別被描述為浮點數 f 這樣寫法是有問題的。c語言中,整型變數和浮點型變數在記憶體中的存放格式是不一樣的。整型變數表示的是乙個16位長的二進位制數,在...
求助求助!!C 問題,幾個C 很基本的問題 求助!!!!
既然是填空就有辦法,填上下面的表示式就行 a a b b c c a a c c b b b b c c a a 1 a b b c 2 a b b c a c 3 6要是程式設計那就有更簡單的辦法。另 這段 的if a b c a ba b cb a c a b c if a b c a c b ...
新手求助,想買基金,買基金的新手求助
打個比方,比如我和你想一起出錢做投資,可是我們對這方面不在行,於是我們找到了我們的朋友 阿牛,因為他對這方面很在行。於是你出700元,我出300元,一共1000元交給阿牛,請他幫忙投資。這1000元就可以算作乙個 將來不管是賺了還是賠了,你和我都要按投資的比例承擔,和阿牛沒關係,誰讓我們當初相信他的...