在无聊的时候,查阅vim的工具时找到了这个强大的工具
cscpoe简单来说就是对源文件建立索引,然后可以查询诸如某个变量、函数、类在哪个地方定义,在哪个地方使用,使用到了其他什么函数等,就是一个强化版的ctags。
首先我们可以使用命令cscope来在当前目录建立索引文件,注意的是默认情况下,它只会搜索*.c以及*.h文件(默认c语言,而不是c++)。
因此我们需要建立一个与c++文件的索引:find *.cpp -type f > cscope.files,再运行cscope命令
接着我们需要在vim中同步数据库:cs add cscope.out
做完上面的步骤我们就可以很方便的查询变量了:cs find type name
type:
0/s: Symbol
1/g:Definition
2/d:called function
3/c:calling function
4/t:text string
6/e:egrep pattern
7/f:file
8/i:files #include this file
cs help可以找到使用cscope的简单方法