2

C++看开源代码有什么好方法吗?

 2 years ago
source link: https://www.v2ex.com/t/877435
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

V2EX  ›  程序员

C++看开源代码有什么好方法吗?

  primitive · 9 小时 6 分钟前 · 1386 次点击
现在 C++项目一般是用 cmake 构建,include, source 文件夹分离,这样的话调试很方便。但我想仅阅读原代码,由于头文件路径问题,vscode 自带的“跳转到函数实现”不能用
23 条回复    2022-09-03 20:53:08 +08:00
yingxiangyu

yingxiangyu      9 小时 4 分钟前   ❤️ 2

换个 IDE
SoulDee

SoulDee      9 小时 0 分钟前   ❤️ 1

那个,这世界上不是只有 vscode 这一款编辑器的,CLion, VS 都可以看,Qt Creater 虽然调试可能没前两者那么厉害,但是看代码的话我更喜欢( h 和 cpp 在不需要在文件夹分离。会在编辑器文件列表视图自动给你分开,按 F1 还能在 h 和 cpp 跳转)
ch2

ch2      8 小时 37 分钟前   ❤️ 2

你指定一下 includePath 不就行了,vscode 插件全靠自己调教
nightwitch

nightwitch      8 小时 25 分钟前

换个可以正确跳转的 IDE
hsfzxjy

hsfzxjy      8 小时 24 分钟前 via Android

改下 includePath 就好了
justanetizen

justanetizen      7 小时 53 分钟前   ❤️ 1

看 big project 的源码,推荐 source insight
churchill

churchill      7 小时 41 分钟前

能编译就能生成 compile_commands.json
跳转代码啥的有啥问题
jones2000

jones2000      6 小时 58 分钟前

需要看什么功能, 直接 debug 跑起来,调用你要看的功能,然后单步调试+看代码就可以了,不明白的地方打印变量值看看,如果要要转跳其他分支,手动修改内存变量就可以了,这样能更好的理解代码。 纯看代码感觉没什么用, 跟看小说一样,看完就忘,
missdeer

missdeer      6 小时 46 分钟前   ❤️ 1

CMakeLists.txt 里加一句 自动导出 compile_commands.json
set(CMAKE_EXPORT_COMPILECOMMANDS ON)

再装一个 clangd 插件,索引建完就好用了
mineralsalt

mineralsalt      6 小时 38 分钟前

clion 呗, vscode 也就写前端还行
hello2090

hello2090      6 小时 35 分钟前 via iPhone

看代码就是 source code 啊
hello2090

hello2090      6 小时 30 分钟前 via iPhone

@hello2090 说错了 source insight ,我在国内工作过的两家公司,sourceinsight 和 beyond compare 都是标配。难道现在不是 C++就不流行他们了?
user0

user0      5 小时 45 分钟前 via Android

小型项目用 ide ,中型用 source insight ,大型用 opengrok
fatigue

fatigue      5 小时 9 分钟前

图形界面就 source insight ,终端就 vim+cscope+ctags
hankai17

hankai17      4 小时 34 分钟前

c++的话 还是能配合一起调试 阅读起来更方便
bzEq

bzEq      4 小时 8 分钟前

vscode 装个 clangd 就行了。然后在你的项目根目录做个软链接到你编译目录的`compile_commands.json`。
hysjw

hysjw      3 小时 24 分钟前 via iPhone

我记得现在的插件 compile_commands.json 都是默认启用的 有这个就能自动识别
FrankHB

FrankHB      3 小时 11 分钟前

@justanetizen @hello2090 Source Insight ?得了吧,那玩意儿现在怕是还不如开个 VS 手动 Ctrl+Shift+F 靠谱呢。
而且默认那个故意放大标识符制造语法噪音,反而导致破坏等宽字体的阅读效率,基本就是平时不会习惯同时编辑和阅读的代码的初级用户才会吹的。

BC 倒是还算好用,但对付代码也没和 KDiff3 之类拉开差距,要经常合并怕还不如。
YuriX

YuriX      2 小时 48 分钟前

UE 这种规模的话,VS+VAX 就可以
wzcloud

wzcloud      2 小时 4 分钟前

用 Clion
ptyfork

ptyfork      1 小时 36 分钟前

Vscode + clangd + remote 简直完美
littlewing

littlewing      1 小时 31 分钟前

CLion

Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK