有没有人推荐使用 gcc 时在头文件中查找定义的方法? 使用 MSVC 时,我只需右键单击并选择“转到定义”,这非常好。
我使用过 netbeans + gcc,它确实有代码帮助,包括指向定义的超链接,所以这是一种选择。但是,我想知道是否有任何其他 IDE 具有该功能,以及不使用 IDE 时的最佳方式。
最佳答案
您可以运行 Doxygen生成基于 HTML 的源浏览器。这不需要使用 Doxygen 样式的文档对代码进行注释。它适用于多种语言,包括 C++、Java 和 Markdown(.md
文件转到“相关页面” ").
这是一种从命令行配置和启动 Doxygen 的方法(在 Linux 上测试过)...
## basic
echo -e "SOURCE_BROWSER=YES\n EXTRACT_ALL=YES\n RECURSIVE=YES\n" |doxygen -
xdg-open html/index.html
或
## include diagrams and non-public content -- and launch browser immediately
echo -e "HAVE_DOT=YES\n CALL_GRAPH=YES\n CALLER_GRAPH=YES\n SOURCE_BROWSER=YES\n EXTRACT_ALL=YES\n EXTRACT_PRIVATE=YES\n EXTRACT_STATIC=YES\n RECURSIVE=YES\n SEPARATE_MEMBER_PAGES=YES\n GENERATE_LATEX=NO\n EXCLUDE_SYMLINKS=YES" |doxygen - && chromium-browser --new-window html/index.html
有一个名为的配套程序doxywizard 让您浏览许多可用于自定义生成的 HTML 的配置选项。或者,您可以运行 doxygen -g
来创建初始配置文件(其中包括详细提示)。
我建议使用以下非默认选项来生成源浏览器:
SOURCE_BROWSER=YES ## display source code
EXTRACT_ALL=YES ## display all items (not just "documented" ones)
RECURSIVE=YES ## include source found in subdirectories
SEPARATE_MEMBER_PAGES=YES ## optional -- each class member has its own page
打开主网页后,您可以浏览到感兴趣的来源(或使用搜索功能)。来源与指向相关声明的可点击链接交叉引用。
这个问题我遇到过几次:doxygen 可以创建很长的文件名,Linux 加密的主目录有一个 limit of 143 characters 。要解决此问题,您可能必须在家外编写 html
文件夹。
一个快速而肮脏的解决方案是将 html
链接到 /tmp
或 /dev/shm
中的文件夹——也可能是 chmod
权限以获得更好的数据安全性。
关于c++ - 使用 gcc 时在头文件中查找定义的好方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8874723/