#pragma mark

导航栏中显示提示,用于组织代码

#pragma mark - UIViewController

#pragma clang diagnostic

使用#pragma clang diagnostic XXX动态修改编译选项

// completionBlock is manually nilled out in AFURLConnectionOperation to break the retain cycle.
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-retain-cycles"
    self.completionBlock = ^ {
        ...
    };
#pragma clang diagnostic pop

#pragma unused

使用#pragma unused(xxx)忽略没有使用变量的编译警告

{
    size_t mapped_size = data.length;
#pragma unused (mapped_size)            
    if (xxx) {
        // use mapped_size
    }
}

#warning

使用#warning xxx在编辑器中手动生成一个警告

#error

使用#error xxx在编辑器中手动生成一个错误

XCODE提供的标记

XCode为我们提供了三个标记,但是只在导航栏中可见。
// MARK:
// TODO:
// FIXME:


RichardXG
337 声望19 粉丝