本文主要是介绍clang diagnostic的使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
使用格式大致如下:
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-相关命令"//需要操作的代码
#pragma clang diagnostic pop
- 1
- 2
- 3
- 4
- 5
- 6
- 7
栗子1:忽略弃用的警告⚠️
UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"" message:@"" delegate:nil cancelButtonTitle:@"" otherButtonTitles:@"", nil];
[alertView show];//方法弃用告警
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"UIAlertView *alertViewTmp = [[UIAlertView alloc]initWithTitle:@"" message:@"" delegate:nil cancelButtonTitle:@"" otherButtonTitles:@"", nil];[alertViewTmp show];
#pragma clang diagnostic pop
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
栗子2:忽略不兼容指针类型⚠️
// 不兼容指针类型
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"//
#pragma clang diagnostic pop
- 1
- 2
- 3
- 4
- 5
- 6
- 7
栗子3:循环引用⚠️
break the retain cycle.
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-retain-cycles"
// self.completionBlock = ^ {
// ...
// };
#pragma clang diagnostic pop
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
栗子4:未使用变量 ⚠️
// 未使用变量
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-variable"int a;
#pragma clang diagnostic pop
- 1
- 2
- 3
- 4
- 5
- 6
栗子5:未使用default ⚠️
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wcovered-switch-default"
// switch (style) {
// case UITableViewCellStyleDefault:
// case UITableViewCellStyleValue1:
// case UITableViewCellStyleValue2:
// case UITableViewCellStyleSubtitle:
// // ...
// default:
// return;
// }
#pragma clang diagnostic pop
这篇关于clang diagnostic的使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!