Objective c 方法实现末尾的分号

Objective c 方法实现末尾的分号,objective-c,Objective C,这两个相同吗?你为什么要用一个而不是另一个 -(void)someMethod;{stuff} vs -(void)somethod{stuff}-(void)somethod是方法的声明,-(void)someMethod{stuff}是它的实现 如果希望方法的声明在类外可见,则应在头文件(例如MyClass.h)中编写,而实现应在implementationes fils(例如MyClass.m)中编写 我不认为-(void)是某种方法;{stuff}是可能的。第一个看起来是错误的。通常在.

这两个相同吗?你为什么要用一个而不是另一个

-(void)someMethod;{stuff}

vs

-(void)somethod{stuff}
-(void)somethod
是方法的声明,
-(void)someMethod{stuff}
是它的实现

如果希望方法的声明在类外可见,则应在头文件(例如
MyClass.h
)中编写,而实现应在implementationes fils(例如
MyClass.m
)中编写


我不认为
-(void)是某种方法;{stuff}
是可能的。

第一个看起来是错误的。通常在.h文件中,您会有如下内容:

-(void)someMethod;
在.m文件中,您将有:

-(void)someMethod { stuff }

第一个可能是剪切粘贴操作的结果,编译器刚刚接受了它。

正确答案来自Josh Caswell:


它在语法上是有效的;接下来几天语言中的一个奇怪的人工制品

对于前两个回答:它实际上是有效的语法,编译器和运行时不会抱怨。我正在读一本关于编程的书,所有的例子都是用分号实现的,这是我以前从未见过的。因此,这个问题;我知道这很奇怪,我会改正的。它看起来确实不对,但如果它起作用,它就起作用了。我对objective-c了解不够,无法判断它的语法是否正确。它不是一种被广泛使用的语言,所以我想这很大程度上取决于编译器会接受什么。它确实有效,但我认为这是一种历史产物。苹果公司不鼓励这样做。我在问题中添加的see评论可能是重复的。它在语法上是有效的;接下来几天的语言中出现了一个奇怪的人工制品。请参阅我在问题中添加的注释