当前位置:首页 > 服务端 > pragma警告处理

pragma警告处理

使用pragma消除警告 (绝不可强行消除,因为有可能是个运行时错误)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "命令字符串"
    代码块
#pragma clang diagnostic pop

1. "-Warc-performSelector-leaks" performselector可能造成内存泄漏
    SEL sel = @selector(gl_getImage:);
    [self performSelector:sel withObject:nil];
    以上警告也可使用消除
    IMP imp = [app methodForSelector:sel];
    void (*func)(id , SEL ,NSInteger) = (void *)imp;
    func(app,selector,0);

2. "-Wreceiver-is-weak" 调用者接收者是weak属性

3. "-Wunused-variable" 变量未使用
    或者 __unused int m = 2; //Unused variable 'm'

4. "-Wdeprecated-declarations" 方法弃用
    [UIAlertView alertView........]

5. "-Warc-retain-cycles" 循环引用
    while(true){}

6. "-Wincompatible-pointer-types" 指针不兼容的

7. "-Wundeclared-selector" 方法在本类中未申明
   eg. SEL sel = @selector(gl_getImage)
   不过以上方法导致的警告也可使用runtime机制消除
       SEL sel = sel_registerName("gl_getImage:")
       SEL sel = NSSelectorFromString(@"gl_getImage:");
8. "-Wunreachable-code" 代码将永不被执行
    NSLog(@"m");
    return;
    NSLog(@"n"); //Code will never be executed


如果想将项目中所有某类型的警告都消除
11. 配置文件 buildSettings->Other Warning Flags
    加入配置字符
    11.1 code will never be executed
        -Wno-unreachable-code   全局禁用警告
        -Wunreachable-code      全局启用警告
    11.2 Unused Entity Issue / unused function 'xxxxx'
        -Wno-unused-function    全局禁用
        -Wunused-function       全局启用
    11.3 ......

 

作者:古龙•历山大亚
来源链接:https://www.cnblogs.com/gulong/p/10283618.html

版权声明:
1、Java侠(https://www.javaxia.com)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。





本文链接:https://www.javaxia.com/server/125020.html

标签: unused variable
分享给朋友:

“pragma警告处理” 的相关文章

计算机组成原理考试复习2022年05月18日 15:56:51
如何学习一门语言2022年05月23日 21:03:30
学习go语言国内最全资料链接2022年05月23日 21:27:32
python中循环的技巧2022年05月23日 21:49:36
python中对切片的理解2022年05月23日 21:57:45
Python快速学习06:词典2022年06月01日 23:19:38
跨平台技术栈2022年06月06日 12:57:33
python2和python3的pip安装2022年06月08日 22:15:42
numpy的安装和使用2022年06月09日 23:34:54