有沒有辦法讓變量充當對另一個變量的引用?我可以有多個變量都擁有關於單個數據的相同信息嗎?對JavaScript中多個變量的引用
例如:
var foo = "data";
var bar = foo;
// I want this to set both foo & bar to null
foo = null;
console.log(bar); // However, bar is still set to "data"
在C
或C++
你能得到與此指針所需的行爲;有兩個變量引用內存中的相同位置。
有什麼方法可以模仿JavaScript中的這種行爲?
我不認爲你在C/C++中得到你想要的行爲。如果將指針「b」設置爲某個非'null'指針'a',然後將'a'設置爲'null',則指針'b'仍將指向內存中的非'null'位置。 (這並不是說你不能在C++中使用指針引用來獲得所需的行爲。) –
@TedHopp我的意思是如果'foo'是'Obj *'而'bar'也是'Obj *'並且它們都指向相同的'Obj',如果'foo'或'bar'改變了它們的'Obj'值,那麼更新就會出現在兩個變量上。 –
嗯,是的。這也發生在JavaScript中。然而,你發佈的代碼不會像C中那樣(如果你把'var'改成'char *')。 –