0
想象一下我定義一個變量,像這樣目標C:分配使得所有的指針變量獲得新值的值
NSString * a = @"Hello people";
現在我複製指向B,使用a和b點位置在那裏@「你好的人」被存儲在內存中(右?或者我誤解是如何工作的?)
NSString * b = a;
現在我想b變更,使得也更新了新的價值。下面不起作用,因爲它會指向B到A 新的NSString @「謝謝大家」
b = @"Thanks all!";
NSLog(@"%@", a); // still "Hello World"
,但我要的是取代無論是在存儲位置@「你好的人」,所以所有指向它的指針都會更新。
b = ????;
NSLog(@"%@", a); // Whoa, it still points to the same memory location as b!
謝謝!
嗯好的。但是我通常應該可以用其他東西替換一個內存位置,對吧?或者能夠立即更新從位置X到位置Y的所有指針?有沒有像那樣的東西? –
但是,爲了替換一塊內存,你不需要知道該位置的指向,對嗎?我想將NSDate更新爲當前時間。如果我做b = [NSDate new];這是行不通的。但我該怎麼做呢? :-) –
@WillemMulder刪除了我的最後一條評論,並用另一個選項更新了我的答案。 – Abizern