关于 Pragma 的使用总结
2015-08-05 09:14
429 查看
注意:此文乃是本人阅读多个博客文章后,记下的个人认为重点的地方。
参考文章:
参考1 参考2
#Pragma mark - 用于分离类中的不同功能的方法。(例如,一个 viewController 一般需要这样划分)
全局忽略 performSelect
局部忽略 performSelect
设置忽略不使用变量的警告 #pragma unused
明确编译错误或者警告 (#error, #Warning 用于提醒别人或者自己代码尚有缺陷的时候很管用)
设置忽略 Depracated Method 的警告
参考文章:
参考1 参考2
#Pragma mark - 用于分离类中的不同功能的方法。(例如,一个 viewController 一般需要这样划分)
#pragma mark - life cycle - (void)dealloc { // [super dealloc]; } - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. } - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; } - (void)viewWillDisappear:(BOOL)animated { [super viewWillDisappear:animated]; } #pragma mark - UIXXXXDelegate #pragma mark - CustomDelegate #pragma mark - event response #pragma mark - private methods #pragma mark - getters and setters
全局忽略 performSelect
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
局部忽略 performSelect
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-performSelector-leaks"
[myObj performSelector:mySelector withObject:name];
#pragma clang diagnostic pop
设置忽略不使用变量的警告 #pragma unused
- (void)giveMeFive { NSString *foo; #pragma unused (foo) return 5; }
明确编译错误或者警告 (#error, #Warning 用于提醒别人或者自己代码尚有缺陷的时候很管用)
- (NSInteger)divide:(NSInteger)dividend by:(NSInteger)divisor { #error Whoa, buddy, you need to check for zero here! return (dividend / divisor); }
- (float)divide:(float)dividend by:(float)divisor { #warning Dude, don't compare floating point numbers like this! if (divisor != 0.0) { return (dividend / divisor); } else { return NAN; } }
设置忽略 Depracated Method 的警告
#pragma clang diagnostic push #pragma clang diagnostic ignored "-Wdeprecated-declarations" // call deprecated method without warning #pragma clang diagnostic pop
相关文章推荐
- APP测试要点
- 面试题:post和get的区别
- css中table-layout:fixed 属性的用法
- 函数闭包问题的学习
- jQuery遍历Json数组
- dda的fpga实现(转载)
- css 多行显示省略号....
- 南邮 OJ 1127 Stick
- struts 工作流程
- hulu面试经验
- Runtime获取网络状态
- StrategySelectionException异常
- PostgreSQL源码分析之shared buffer与磁盘文件
- Android 布局文件
- 二三四五六章作业
- 06-js禁止回车提交表单
- 南邮 OJ 1126 GCD
- C 语言中的好基友 数组和指针之三
- Android Studio系列教程五--Gradle命令详解与导入第三方包
- android view startAnimation后setVisibility没有效果