客观c:方法关系.h和.m
答
如果你想访问从另一个类的函数你说的.h头文件要导入,使编译器了解在哪里找到这些功能以及如何翻译它们。
答
这是如何实施你的课程的指导原则。
用“C”来表达它。您可以在.h(头文件)文件中定义您的原型,并在.c中执行实现,在这种情况下执行.m文件。
这两种方法都可以工作,只是没有在.M重新定义它...
答
不,他们并不需要在标题中声明。
当尝试按类别或扩展名创建方法“private”时,通常会忽略头中的声明。无论这或多或少是危险的,而不是将标题中的标题声明为私人标识是有争议的,并且取决于使用您的对象的人。
在单独的头文件中声明与基类型不相关的类别也很好。
答
是的,没有必要在.h中声明方法,因为在目标c中任何消息都可以传递给任何对象。这就是为什么它不会给出任何错误,只是警告“ABClass可能不会响应messageABC”。对于像我这样只讨厌警告的人在.h中宣布它。这是一个很好的做法,因为不在头文件中声明它更容易崩溃,因为你只是忽略了警告,实例无法处理该消息,并且你的应用程序会说“你好Crash先生”。和“Bye-Bye”给开发者。
这实际上是完全错误的,虽然可以理解,所以没有投票权。 Objective-C使用动态分派,因此重要的是对象知道如何在运行时响应该方法。您需要在头文件中放置Objective-C方法的唯一原因是阻止编译器认为您已经忘记定义它们并禁止警告(除非您声明方法,否则它将假定所有参数均为对象)。 – JeremyP 2011-04-07 10:34:27