寫了 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則保證這個傳過來的值在使用時不被改變。
