日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++ 传指针还是引用?

發(fā)布時(shí)間:2025/3/21 c/c++ 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++ 传指针还是引用? 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

????? 用C++做了一段時(shí)間畢業(yè)設(shè)計(jì)了,突然有一天被困在傳指針還是傳引用的問題上。后來翻看了《C++ 編程規(guī)范》,并結(jié)合了項(xiàng)目實(shí)際情況,總結(jié)出下面結(jié)論:

傳指針

  • 如果函數(shù)保存了地址。例:復(fù)制地址給類成員變量、把地址保存在函數(shù)內(nèi)靜態(tài)局部變量中。
  • 如果參數(shù)是可以選的。例:允許傳入NULL值。

傳引用

  • 如果函數(shù)沒有保存地址。例:僅修改了參數(shù)引用對(duì)象。
  • 如果參數(shù)是不可選的,并且要求必須提供有效對(duì)象做參數(shù)。

????? 如果函數(shù)保存了地址,可能在以后直接使用或者修改地址指向的對(duì)象。如果使用傳引用的話,調(diào)用者不知道需要在棧(stack)還是在堆(heap)上分配引用對(duì)象資源。一旦調(diào)用者傳入的引用對(duì)象是在棧上,編譯器自動(dòng)回收后,函數(shù)保存的地址將不再有效!

????? 而函數(shù)保存了地址時(shí)使用傳指針,就在提示調(diào)用者傳入的指針參數(shù)指向的對(duì)象應(yīng)當(dāng)分配在堆上。

????? 當(dāng)然也有推薦全部使用傳指針的,理由是傳值和傳引用容易使調(diào)用者混淆。我不贊同這個(gè)觀點(diǎn),我打算按照上述規(guī)則重新修改畢業(yè)設(shè)計(jì)。

總結(jié)

以上是生活随笔為你收集整理的C++ 传指针还是引用?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。