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

他们必须到场吗? 可以添加新的标记吗?为什么会这样?它的原因是什么? 去掉记号有什么害处吗?有人想过吗?


当前回答

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

在一个较长的程序中,很难记住和找到一个方法名。所以pragma mark允许你根据方法所做的工作来分类。例如,你为表视图协议方法、AlertView方法、Init方法、声明等标记了一些标签。

#pragma标记是Xcode的工具,但它对你的代码没有影响。它只是帮助在编码时更容易找到方法。

其他回答

#pragma标记指令出现在Xcode的菜单中,用于直接访问方法。它们对项目完全没有影响。

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

有一个特殊的pragma标记——它创建了一行。

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

在一个较长的程序中,很难记住和找到一个方法名。所以pragma mark允许你根据方法所做的工作来分类。例如,你为表视图协议方法、AlertView方法、Init方法、声明等标记了一些标签。

#pragma标记是Xcode的工具,但它对你的代码没有影响。它只是帮助在编码时更容易找到方法。

只是添加我正在寻找的信息:pragma标记是特定于Xcode的,所以如果你处理一个在不同ide中打开的c++项目,它在那里没有任何影响。例如,在Qt Creator中,它不会为方法添加类别,也不会生成任何警告/错误。

#pragma是一个来自C语言的预处理器指令。它的目的是向编译器指定依赖于实现的信息——也就是说,每个编译器都可以选择按自己的意愿解释这个指令。也就是说,它被认为是一个不改变/影响代码本身的扩展。所以编译器可能会忽略它。

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

简单地说,我们可以说#pragma mark -用于对方法进行分类,因此您可以轻松地找到您的方法。它对于长期项目非常有用。

Use:

#pragma mark - NSSecureCoding

“pragma”的主要目的是供开发人员参考。

您可以很容易地在成千上万的代码行中找到一个方法/函数。

Xcode + 11:

顶部标记线

// MARK: - Properties

在顶部和底部标记线

// MARK: - Properties -

只在底部划线

// MARK: Properties -