在Xcode中#pragma标记的目的是什么?它们在.m文件中的位置重要吗?一些#pragma应该出现在所有其他#pragma之前吗?
#pragma
.m
#pragma mark指令在Xcode中显示在直接访问方法的菜单中。它们对项目完全没有影响。
#pragma mark
例如,在Xcode 4中使用它将使这些项目直接出现在跳转栏中。
有一个特殊的pragma mark -来创建一行。
pragma mark -
#pragma mark用于标记一组方法,这样你就可以很容易地从跳转栏中找到和检测方法。当您的代码文件达到1000行左右,并且您想通过跳转框中的类别快速找到方法时,它可能会帮助您。
在一个较长的程序中,很难记住和找到一个方法名。所以编译指示标志允许你根据方法所做的工作对它们进行分类。例如,你为表视图协议方法、AlertView方法、Init方法、声明等标记了一些标签。
#pragma mark是Xcode的工具,但它对你的代码没有影响。它只是帮助在编码时更容易找到方法。
简单地说,我们可以说#pragma mark -是用来对方法进行分类的,所以你可以很容易地找到你的方法。它对于长期项目非常有用。
#pragma mark -
当我们有一个大的/长的类,比如超过100行代码时,我们不能在监视器屏幕上看到所有内容,因此我们不能看到类的概述(也称为文档项)。有时我们想要查看我们类的概述;它的所有方法、常量、属性等一目了然。你可以在Xcode中按Ctrl + 6来查看类的概述。你会看到一个弹出窗口,也就是跳跃栏。
默认情况下,这个跳转栏没有任何桶/节。这只是一个长长的清单。(虽然我们可以在跳转栏出现时开始输入,它会在跳转栏项中搜索。)这里需要pragma mark。
pragma mark
如果你想在跳转栏中创建部分,那么你可以使用带有相关描述的pragma标记。现在请参阅问题中附带的快照。有“视图生命周期”和“一个节专门…`是由pragma marks创建的部分。
只是添加我正在寻找的信息:pragma mark是特定于Xcode的,所以如果你处理一个在不同ide中打开的c++项目,它在那里没有任何影响。例如,在Qt的创造者中,它不会为方法添加类别,也不会生成任何警告/错误。
#pragma是一个来自C语言的预处理器指令。它的目的是向编译器指定依赖于实现的信息——也就是说,每个编译器都可以选择按自己的意愿解释这个指令。也就是说,它被认为是一个不改变/影响代码本身的扩展。所以编译器可能会忽略它。
Xcode是一个IDE,它利用了#pragma,并以自己特定的方式使用它。关键是,#pragma不是Xcode,甚至不是Objective-C特定的。
使用:
#pragma mark - NSSecureCoding
“pragma"供开发人员参考。
您可以很容易地在成千上万的代码行中找到一个方法/函数。
Xcode 11 +:
顶部标记线
// MARK: - Properties
在顶部和底部标记线
// MARK: - Properties -
只在底部划线
// MARK: Properties -