Objective-C新手 - >快速提问

Mat*_* H. 0 iphone xcode objective-c interface-builder

所以我试图从VB.NET到Objective-C的可怕飞跃.

我唯一的卷发体验是一个小小的ActionScript 3 ......我很难掌握*角色的使用.

问题1:

我正在使用的教程将这两行紧挨着......

IBOutlet UIPickerView *pickerView;
NSArray* myArray;
Run Code Online (Sandbox Code Playgroud)

我的理解是*表示基本上是一种引用类型.为什么它在第一行的变量名前面,而在第二行的类名呢?

问题二,关于类声明:

@implementation {
 Why is some code here
}

and other code here?
@end
Run Code Online (Sandbox Code Playgroud)

Car*_*rum 6

  1. 这是一个很大的蠕虫 - 答案是那里的语法是等价的,你可以做任何你喜欢的.有些人对于其中一个人非常虔诚,但编译器并不关心.

  2. 我想你的意思是@interface,对吧?大括号内的代码只是一个实例变量列表.大括号之外是放置方法声明的地方.

如果你想学习Objective-C,那么首先去学习C可能是值得的.然后,当您理解语法和C语言概念(如指针和前向声明)时,您可以非常快速地获取Objective-C.

  • 要记住的一件事是,如果你每行声明多个变量(`NSArray*oneArray,*anotherArray;`),你需要每个变量的`*`(`NSArray*oneArray,anotherArray;`就像`NSArray*oneArray; NSArray anotherArray;`).这可能是使用变量名保留`*`的一个很好的理由.或者,如果您更喜欢带有类型的`*`(就像我一样),那么这是避免每行声明多个变量的一个很好的理由.:) (3认同)