5

既然 Objective-C 是一种动态类型语言,为什么我们还需要类型呢?是因为它与 C 代码混合的原因吗?

4

2 回答 2

18

Objective-C 没有与 C 混合,它是 C 的适当超集,具有一些动态特性

您可以避免在任何 Objective-C 对象变量上使用静态类型并将所有内容声明为id,但我不明白您为什么要这样做。
由于类型信息(提供或推断),您将失去编译器为您提供的所有帮助。

总结一下,你不需要类型,你需要类型。

于 2013-08-28T17:45:59.773 回答
0

Objective-C 是 C 的适当超集,因为它可以做 C 可以做的所有事情,甚至更多。最初,Objective-C 是作为在任何 C 编译器上编译的 C 的扩展而创建的。

类型既可以帮助您作为程序员,也可以帮助描述语言语义。它们可以防止错误并可以提高应用程序的性能,因为运行时系统不必那么努力地工作。

于 2013-08-28T19:08:09.330 回答