PC lint -sem 用法示例


-sem(std::auto_ptr::auto_ptr,custodial(1)) // the auto_ptr class type
// handles custody automagically




比如说在一个函数A里面分配了内存,这时调用了另一个函数AddNode将分配的内存保存起来了,因此在函数A里面没有释放内存,如果使用PC-Lint检查会有内存泄漏方面的告警,因为PC-Lint不知道函数AddNode将分配的内存保存起来了,要消除这个告警就要用到-sem选项了。假设AddNode的第2个参数是用来保存分配内存,用法如下

  -sem(AddNode, custodial(2))

   这里custodial关键字是表示保存的意思,2是表示第2个参数。

https://muzizongheng.blog.csdn.net/
原文地址:https://www.cnblogs.com/muzizongheng/p/3167270.html