我需要一次一個和所有的澄清值傳遞/指針/參考。通過數值/指針/參考說明
如果我有一個變量如
int SomeInt = 10;
而且我想通過SomeInt時DoSomething的()我想SomeInt的價值,它像
void DoSomething(int Integer)
{
Integer = 1;
}
傳遞給函數在我目前的情況下根據我們在DoSomething()裏面對它做的任何事情來更新,以及在內存和性能方面最有效率,所以我不會複製變量?這是說以下哪個原型可以完成這項任務?
void DoSomething(int* Integer);
void DoSomething(int& Integer);
我該如何將變量傳遞給函數?前兩個原型有什麼區別?
最後,如果使用函數的類
class SomeClass
{
int MyInteger;
public:
void ChangeValue(int& NewValue)
{
MyInteger = NewValue;
}
};
內如果我整數關口進入ChangeValue,在整數i中獲取的刪除通過將意味着,當我嘗試使用MyInteger從類它將內不再可用?
謝謝大家的時間,我知道這是一個基本的問題,但我繼續陷入困惑的解釋進一步。
是,這些功能可能會完成任務。 –
-1我會對一生中的一次澄清感興趣,人們如何打算學習像C++這樣複雜的編程語言,而不必查看基本的學習材料。 – Solkar
您可能有興趣閱讀常見問題解答問題http://stackoverflow.com/questions/2139224/how-to-pass-objects-to-functions-in-c – Cecilia