【问题标题】:C function in an objective-C classObjective-C 类中的 C 函数
【发布时间】:2011-05-08 15:11:06
【问题描述】:

如果我在目标 C 类中创建 C 风格函数,该函数会是类级别的方法吗?还是实例方法?

提前致谢

【问题讨论】:

  • 它忽略了 obj-c 范围,仍然使用标准的 c 样式范围。所以一个函数对于文件来说通常是全局的或静态的。

标签: objective-c c oop


【解决方案1】:

如果你在 Objective-C 中创建一个 C 函数,它与特定的类没有任何关系。也就是说,它将位于全局命名空间中。 SDK 中的一个示例是NSLog(...)

【讨论】:

  • @Alexsander:感谢您的编辑。不确定在全局命名空间中是否提高了新手的理解能力!
【解决方案2】:

您不能将 C 函数附加到 Objective-C 类。如果你想要一个附加到一个类的“函数”,你必须将它声明为一个类方法。或者你可以在类之外声明函数。

【讨论】:

  • 请注意,Objective-C 编译器确实接受要在 Objective-C 类“内部”声明或定义的 C 函数,即在 @interface@implementation 块内。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-03
  • 2014-07-27
  • 1970-01-01
  • 2012-12-23
  • 1970-01-01
相关资源
最近更新 更多