C 中的引用傳遞與指針
確定何時通過引用傳遞以及何時通過指針傳遞可能是一個令人困惑的問題C.讓我們探討一下每種方法的優缺點。
通過引用傳遞
優點:
缺點:
透過指標傳遞
優點🎜>
允許傳入文字和空值。由於複製數據,效率可能會降低。
一般經驗法則是「盡可能使用引用和指針當你必須的時候。 」例如:
傳遞非原始資料類型(例如字串、向量、地圖)時,通常首選引用,因為它們允許修改實際資料。考慮以下程式碼片段:
在此範例中,使用指標傳遞myFriends 是合適的,因為它允許我們創建一個新向量,然後傳遞一個共享指標給它。但是,請務必記住明確刪除 myFriends 以避免記憶體洩漏。int main() { map<string, shared_ptr<vector<string>>> adjacencyMap; vector<string>* myFriends = new vector<string>(); myFriends->push_back(string("a")); myFriends->push_back(string("v")); myFriends->push_back(string("g")); adjacencyMap["s"] = shared_ptr<vector<string>>(myFriends); return 0; }
以上是在 C 中什麼時候應該使用引用以及什麼時候應該使用指標?的詳細內容。更多資訊請關注PHP中文網其他相關文章!