PC lint -sem 用法示例

来源:互联网 发布:测bpm软件 编辑:程序博客网 时间:2024/06/07 06:49

-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个参数。