C++ 使用const 引用傳遞參數


寫了 void Display(vector<int> res) 函數后,編譯器提示:Clang-Tidy: The parameter 'res' is copied for each invocation but only used as a const reference; consider making it a const reference

在c++可以使用引用傳遞作為函數的形參傳入函數,相較於值傳遞的方式,引用傳遞能夠節省函數使用時的內存分配,不需要像值傳遞一樣拷貝實參。對於普通的數據類型可能看出引用的優勢,但是如果函數的傳入參數是一個十分復雜的結構體或者類,那么引用傳遞可以節省很大的內存開銷。

然而,由於引用傳遞是雙向的,當在函數中對於形參的數據進行改變后,實參的值也會進行相應的改變。

如果我們既不想改變傳入參數的值,也不想因為值傳遞產生太大的開銷,那么可以嘗試一下使用常引用 void Display(const vector<int>& res) 。

這樣做很有好處的,用引用可以減少數值傳遞過程中的時間,而const則保證這個傳過來的值在使用時不被改變。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM