source insight无法识别函数定义
2022-07-22 15:26 dreamboy2000 阅读(969) 评论(0) 编辑 收藏 举报在使用source insight 4.0走读google glog代码过程中发现,部分函数的定义比如utilities.cc的InitGoogleLoggingUtilities和ShutdownGoogleLoggingUtilities无法被source insight识别,导致走读代码、函数跳转不顺手。
查询资料知道源代码中部分宏定义会让source insight无法区分函数定义和宏定义,导致source insight认为宏定义是函数,而函数定义是其他的。根据这个描述,在utilities.cc中发现使用了很多_START_GOOGLE_NAMESPACE_和_END_GOOGLE_NAMESPACE_,推测这个宏定义是导致问题的原因。
解决方法:source insight提供了一个配置文件c.tom,可将宏定义添加到这个文件里面,让source insight解析代码时,着重注意哪些是宏定义,添加完之后重启source insight发现函数定义被正确识别,问题解决。
文件名:
选项;Misc下面:
将代码中的宏定义添加进去:
重新打开source insight发现函数定义被正确识别:
最后:不同的源代码,导致无法识别函数定义的宏定义不同,要结合具体情况添加。