NSString * aString;
请解释Objective-C的实例定义
什么我不明白的是*,究竟是运营商做,还有什么可如果有的话何去何从呢?
对不起,我知道这是一个相当新手的问题,但我是自学的;每当我看到“*”时,我想通配符,我不明白你为什么会投出一个对象NSString;
NSString * aString;
请解释Objective-C的实例定义
什么我不明白的是*,究竟是运营商做,还有什么可如果有的话何去何从呢?
对不起,我知道这是一个相当新手的问题,但我是自学的;每当我看到“*”时,我想通配符,我不明白你为什么会投出一个对象NSString;
这意味着ASTRING指向其中的NSString对象是在存储器中。您可能想要查看Binky Pointer Fun(youtube version)以了解指针是什么!
您还可以阅读更多关于指针(甚至双指针!)here。
指针正是它听起来像的东西,它指出了要去的地方。你的记忆被分成“盒子”,每个盒子都被称为“存储器地址”。你这样写:
NSString myString;
这意味着你分配在内存中NSString
对象。但是,当你决定写:
NSString *myString;
这意味着你在你的记忆的地方创建一个指向NSString
。简而言之,这意味着后面的例子中的myString
将包含存储器地址到“”实际“ NSString
”对象。
*表示您正在创建一个指向对象的指针。请注意,这是C语言的一部分,而不是Objective-C(Objective-C是C的严格超集)。