繁体   English   中英

__clang_analyzer__的重要性

[英]importance of __clang_analyzer__

clang_analyzer的重要性是什么,因为我没有使用它,我看到分析器在下面的代码中喊出泄漏。

#ifndef __clang_analyzer__
CGPathRef pathWithRoundRect(CGRect iRect, CGFloat iRadius) {
    CGMutablePathRef returnVal = CGPathCreateMutable();
    CGPathMoveToPoint();
    CGPathAddArcToPoint();
    CGPathAddArcToPoint();
    CGPathAddArcToPoint();
    CGPathAddArcToPoint();
    CGPathCloseSubpath(returnVal);
    return returnVal;
}
#endif

__clang_analyzer__是一个宏,在为分析器编译程序时定义(参见Clang用户手册 )。

当它被定义时, #ifndef#endif之间的代码没有被编译,这意味着分析器没有看到它,也无法告诉你从一个名称不是的函数返回的所拥有的CGMutablePath 。 t表示它返回一个拥有的引用。

您应该考虑将create添加到函数名的开头。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM