#pragma标记的意义​​是什么? 为什么我们需要#pragma标记?

Xcode中#pragma标记的目的是什么? 他们在.m文件中的位置是否重要? 应该有一些#pragma在所有其他人之前?

  • 他们必须在场吗?
  • 可以添加新标记吗? 他们为什么会呢? 是什么造成的?
  • 删除标记是否有害? 会有人想要吗?

在直接访问方法的菜单中, #pragma mark指令显示在Xcode中。 他们完全没有影响的scheme。

例如,将它与Xcode 4一起使用会使这些项目直接出现在跳转栏中。

有一个特殊的pragma mark -创build一条线。

在这里输入图像说明

#pragma mark用于标记一组方法,以便您可以轻松地从跳转栏中查找和检测方法。 它可以帮助你当你的代码文件达到约1000行,你想通过跳转框中的类别快速find方法。

在一个很长的程序中,很难记住和find一个方法的名字。 因此, 编译标记允许您根据自己的工作对方法进行分类。 例如,您为表视图协议方法,AlertView方法,初始方法,声明等标记了一些标记。

#pragma mark是XCode的工具,但它不会影响您的代码。 它只是帮助在编码时更容易find方法。

简单地说,我们可以说#pragma mark -用于分类方法,所以你可以很容易地find你的方法。 这对长期项目非常有用。

只是添加我正在寻找的信息: pragma mark是Xcode特定的,所以如果您处理在不同的IDE中打开的C ++项目,那么它在那里没有任何效果。 例如,在Qt Creator中,它不会为方法添加类别,也不会生成任何警告/错误。

编辑

#pragma是一个来自C编程语言的预处理指令。 它的目的是为编译器指定实现相关的信息 – 也就是说,每个编译器都可以select按照需要来解释这个指令。 这就是说,它被认为是一个不会改变/影响代码本身的扩展。 所以编译器可能会忽略它。

Xcode是一个IDE,利用#pragma并以自己特定的方式使用它。 重点是#pragma不是Xcode,甚至Objective-C都是特定的。

当我们有一个很大/很长的class级说超过100行代码,我们不能看到监视器屏幕上的一切,因此我们不能看到我们class的概述(也称为文档项目)。 有时我们想看看我们class的概况; 它的所有方法,常量,属性等一目了然。 您可以按XCode中的Ctrl + 6查看您class级的概览。 你会得到一个popup窗口又名跳吧。

默认情况下,这个跳转栏没有任何桶/部分。 这只是一个长长的名单。 (虽然我们可以在跳转栏出现时开始打字,并且会在跳转栏项目中进行search)。 这里是pragma mark的需要

如果您想要在跳转栏中创build段,则可以使用带有相关描述的杂注标记。 现在请参考附件快照。 “查看生命周期”和“专用章节”是由pragma mark创build的部分

当searchdoc指向编译器是如何编译指示,我发现这个NSHipster文章 ,做这个工作很好。

我希望你会喜欢阅读

 #pragma mark - NSSecureCoding 

“杂注”的主要目的是供开发人员参考。 在这里输入图像说明

您可以轻松地在数以千计的编码行中find方法/函数。