我是C++的新手,希望完成類似這樣的工作,但它不像我期望的那樣工作。C++在變量中保存對象的引用
Object& object = Object();
我想將引用保存在變量object
中創建的對象中。
我該怎麼做?謝謝。
編輯: 我想將對象的引用傳遞給另一個對象的構造函數。它必須是引用(或指針?),因爲它是一個沒有太多內存的arduino代碼。
我是C++的新手,希望完成類似這樣的工作,但它不像我期望的那樣工作。C++在變量中保存對象的引用
Object& object = Object();
我想將引用保存在變量object
中創建的對象中。
我該怎麼做?謝謝。
編輯: 我想將對象的引用傳遞給另一個對象的構造函數。它必須是引用(或指針?),因爲它是一個沒有太多內存的arduino代碼。
有兩種合法途徑通過參考變量存儲:
// o1 is const
const Object& o1 = Object();
// o2 is mutable
Object&& o2 = Object();
有C++中的特殊規則,保持活着的對象,只要引用是在範圍內。
你可能想要做的僅僅是存儲對象是什麼:
Object o = Object();
我可以將對象存儲在一個變量中,並將其傳遞給我需要傳遞給它的每個構造方法:Object &o? – Jochim
@Jochim如果你傳遞它的構造函數採用'const Object&'或'Object&'參數,那麼你可以簡單地將'Object'實例傳遞給它。 – ArchbishopOfBanterbury
@Jochim當一個函數需要一個對象的(非const)引用時,這意味着它可能會修改它的值。但這並不意味着你不能將對象實例傳遞給對象和參數。 – Quest
你不能這樣做,但也許如果你指定你真正需要的人也許能夠提出其他建議。 – juanchopanza
你可以做'Object o;',然後'Object&o_ref = o;' – ArchbishopOfBanterbury
你需要'Object && object = Object();'如果有疑問,加倍標點符號.. –