C++ 查找在其中声明全局变量的文件
我正在尝试学习一个相当大的开源代码库。在这个文件中,一个变量m被多次引用而从未声明过(参见第819行)。所以我认为它必须是一个全局变量 但是,该文件包含大约24个.h文件。据我所知,m可以在这些文件中声明。有没有办法确定哪个文件声明了它,或者我需要搜索每个.h文件C++ 查找在其中声明全局变量的文件,c++,global-variables,C++,Global Variables,我正在尝试学习一个相当大的开源代码库。在这个文件中,一个变量m被多次引用而从未声明过(参见第819行)。所以我认为它必须是一个全局变量 但是,该文件包含大约24个.h文件。据我所知,m可以在这些文件中声明。有没有办法确定哪个文件声明了它,或者我需要搜索每个.h文件 这就是你需要工具来做的事情吗?Eclipse有这样的功能吗?如果您在本地下载了代码库,您可以使用grep: 请注意,grep是一个基于Unix的命令,因此根据您的shell,它可能不可用。如果您使用的是Windows,FINDSTR(
这就是你需要工具来做的事情吗?Eclipse有这样的功能吗?如果您在本地下载了代码库,您可以使用grep: 请注意,grep是一个基于Unix的命令,因此根据您的shell,它可能不可用。如果您使用的是Windows,FINDSTR()也会做类似的事情,但没有那么灵活 使用grep的一个简单示例如下:
grep -l -R "some_string" /usr/local/SomeDirectory
如果您在本地下载了代码库,则可以使用grep: 请注意,grep是一个基于Unix的命令,因此根据您的shell,它可能不可用。如果您使用的是Windows,FINDSTR()也会做类似的事情,但没有那么灵活 使用grep的一个简单示例如下:
grep -l -R "some_string" /usr/local/SomeDirectory
我会下载源代码并在IDE中从中创建一个项目。然后我可以通过上下文菜单找到声明
如果有更优雅的方式,我想听 我会下载源代码并在IDE中从中创建一个项目。然后我可以通过上下文菜单找到声明
如果有更优雅的方式,我想听 在这个文件中,看起来“m”是由“g”表示的类的成员。如果不进一步挖掘,很难说出“g”是什么。我猜这是“game”类的一个实例,因为“game.h”包含一个变量“m”,它是一个映射!如果
m
确实是全局变量,那么您可以通过greppingnm*.o
并使用模式“bm$”来搜索已编译的对象文件。h定义了游戏的一个全局实例,名为g
,其中包含一个名为m
的地图,我向您展示了一个在命名变量时不应该做什么的案例。在这个文件中,看起来“m”是由“g”表示的类的一个成员。如果不进一步挖掘,很难说出“g”是什么。我猜这是“game”类的一个实例,因为“game.h”包含一个变量“m”,它是一个映射!如果m
确实是全局变量,那么您可以通过greppingnm*.o
并使用模式“bm$”来搜索已编译的对象文件。h
定义了游戏的一个全局实例,名为g
,其中包含一个名为m
的地图,我给大家介绍了一个例子,说明在命名变量时不应该做什么。在这个家伙的程序中,“m”这个短语出现了数千次。我注意到了这一点。这使得它变得特别困难,因此他要么必须手动搜索原始定义,要么找出某种能与grep很好地协同工作的正则表达式。老实说,咬紧牙关搜索这24个头文件可能会更容易。在这个家伙的程序中,“m”这个短语出现了数千次。我注意到了。这使得它变得特别困难,因此他要么必须手动搜索原始定义,要么找出某种能与grep很好地协同工作的正则表达式。老实说,咬紧牙关搜索这24个头文件可能会更容易。