Pie*_*ier 0 objective-c actionscript-3
我来自AS3背景.在AS3中,当您将对象分配给var时,不将对象复制到var,var将成为对象的引用.
var myObject = new MyClass();
myObject.name = "Bananas";
var myRef = {};
myRef.ref = myObject;
trace(myRef.ref.name); // Bananas
myObject.name = "Mango";
trace(myRef.ref.name); // Mango
myObject = null;
trace(myRef.ref); // null
Run Code Online (Sandbox Code Playgroud)
在Objective C,AFAIK中,当你将一些对象分配给另一个对象的某个属性时,"对象被复制.我的困惑来自于使用temp对象后你可以释放它.
NSMutableString* myString = [[NSMutableString alloc] initWithString:@"Hello"];
[myLabel setText:myString];
[myString release];
Run Code Online (Sandbox Code Playgroud)
...如果你能释放它意味着你不再需要它了.所以它被复制了?或者myLabel中的"text"属性是对myString的引用?
你可以猜测我刚开始在Objective C的世界里.
TIA