V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuegy
V2EX  ›  C++

有没有能支持 C++模版元编程的 IDE?

  •  
  •   xuegy · 2021-02-24 15:58:40 +08:00 via iPhone · 3210 次点击
    这是一个创建于 1402 天前的主题,其中的信息可能已经有所发展或是发生改变。
    基于某开源工具箱写 C++命令行程序,该工具箱无下限地使用模版元编程,以致于上层代码基本上变成了另一门自创语言。
    现在用 xcode 带的文本编辑器写,除了 const 能变色跟记事本没有任何区别,编辑器根本就不知道我写的是啥。一切都只能在最后编译的时候看 Clang 的报错信息。
    求问有没有 IDE 能支持 C++模版元编程的错误提示和自动补全?我是不是想太多了?
    第 1 条附言  ·  2021-02-24 16:36:56 +08:00
    该工具箱的模版元编程到了丧心病狂的程度,比如:
    写了一个物理方程,编译时会对这个方程进行量纲分析,如果量纲出错,即便 C++语法是对的,编译也不通过。
    有没有什么 IDE 能做到这种程度?
    15 条回复    2021-02-25 01:55:37 +08:00
    Jirajine
        1
    Jirajine  
       2021-02-24 16:11:39 +08:00
    cpp 目前支持最好的应该是 clangd 吧,要是不行那就没办法了。
    inhzus
        2
    inhzus  
       2021-02-24 16:18:40 +08:00
    wutiantong
        3
    wutiantong  
       2021-02-24 16:23:47 +08:00
    xcode 的 cmake 插件是很好用的呀
    wzxlovesy
        4
    wzxlovesy  
       2021-02-24 16:30:09 +08:00 via Android
    个人习惯用 Clion,但不确定你这个情况下好不好使
    zhuangzhuang1988
        5
    zhuangzhuang1988  
       2021-02-24 16:54:05 +08:00
    yanqiyu
        6
    yanqiyu  
       2021-02-24 17:27:23 +08:00
    突然对你用的框架很感兴趣,我正好想要写一个支持量纲检的物理库
    wdhwg001
        8
    wdhwg001  
       2021-02-24 21:32:21 +08:00
    https://develop.openfoam.com/Development/openfoam/-/issues/1936

    所以结论应该是 ccls 配 VSCode 了,简单翻了一下 VSCode 也有专门的插件。
    xuegy
        9
    xuegy  
    OP
       2021-02-24 23:25:21 +08:00 via iPhone
    @wdhwg001 我估计实时量纲检测还是做不到,这玩意编译速度以小时计,要是 IDE 实时分析代码那得卡成啥样...
    ipwx
        10
    ipwx  
       2021-02-24 23:34:40 +08:00
    CLion 还不错,你可以试试。
    zhangyan3011
        11
    zhangyan3011  
       2021-02-24 23:34:52 +08:00 via Android
    厉害,原来咱用的 OpenFOAM 叫做元编程。
    可以试试 ccls 啊,比记事本好一点点。在寻找函数定义时,它会帮你缩小范围。但是精确找到你想要的那个函数有点难。
    agagega
        12
    agagega  
       2021-02-25 00:30:26 +08:00 via iPhone
    模版元量纲分析当年就听说过,觉得挺有想象力的,没想到还真有库做了...
    wdhwg001
        13
    wdhwg001  
       2021-02-25 01:02:30 +08:00 via iPhone
    @xuegy 我完全没有尝试过不过 vs 是支持增量编译的,所以或许可以用 vs 的增量编译逐字符不停地编译,跑在后台或者别的什么地方?
    dangyuluo
        14
    dangyuluo  
       2021-02-25 01:08:36 +08:00
    用了 clangd 之后我觉得天空都亮了
    xuegy
        15
    xuegy  
    OP
       2021-02-25 01:55:37 +08:00
    @wdhwg001 我看了一下那个 VSCode 插件不是给编程时候用的,是给它自创的字典文件(专门存方程的常数,初始条件,边界条件)用的,不过能多个带语法高亮的东西也是好事。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2826 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 14:12 · PVG 22:12 · LAX 06:12 · JFK 09:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.