vscode 新人,原来用 Idea 写 Java ,自动“import” 或提示 “import 哪个类” 都很方便。 现在转到 c++了,打算用 vscode 作为开发工具。 目前遇到两个问题: - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jdz
V2EX    Visual Studio Code

vscode 新人,原来用 Idea 写 Java ,自动“import” 或提示 “import 哪个类” 都很方便。 现在转到 c++了,打算用 vscode 作为开发工具。 目前遇到两个问题:

  •  
  •   jdz 2020-04-24 11:26:16 +08:00 9671 次点击
    这是一个创建于 1995 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1. vscode 能像 Idea 自动 import 那样, 自动 include 头文件吗, 或者有重复的头文件,可以提示。 比如我想用 vector,是否可以自动 加上"#include <vector>"
    2. 写 c 或 cpp 程序的时候, 发现函数调用不存在的函数时不会飘红波浪线报错
    求助 v 友,以上问题有办法解决吗
    53 条回复    2021-08-02 14:10:49 +08:00
    aliensb
        1
    aliensb  
       2020-04-24 11:28:26 +08:00
    战马
    lhx2008
        2
    lhx2008  
       2020-04-24 11:30:00 +08:00
    C++ 请用宇宙第一 IDE
    wellsc
        3
    wellsc  
       2020-04-24 11:30:46 +08:00
    试试 Clion?
    wangkun025
        4
    wangkun025  
       2020-04-24 11:31:18 +08:00
    Clion 欢迎你。
    jdz
        5
    jdz  
    OP
       2020-04-24 11:31:28 +08:00
    @lhx2008 vs 感觉有点重, 另外也想学下 vscode, 以后写一些小工具,编辑等全部转入 vscode 了准备
    jdz
        6
    jdz  
    OP
       2020-04-24 11:32:35 +08:00
    @wellsc clion 的远程开发 跟 vscode 的 remote-ssh 比如何
    lhx2008
        7
    lhx2008  
       2020-04-24 11:33:06 +08:00
    @jdz #5 vscode 有 https://code.visualstudio.com/docs/editor/intellisense 不过性能很差的
    jdz
        8
    jdz  
    OP
       2020-04-24 11:33:53 +08:00
    @lhx2008 之前看了, 但是评分很低,就没装
    neoblackcap
        9
    neoblackcap  
       2020-04-24 11:40:07 +08:00
    那你用 visual studio 啊,这些可满足的。至少自带的 C++插件做不了你说的那些
    MAIQ
        10
    MAIQ  
       2020-04-24 11:52:32 +08:00
    visual studio 可以解决你的两个问题
    xiri
        11
    xiri  
       2020-04-24 12:08:23 +08:00
    写 c++还是不要用 vscode 吧,很麻烦的
    Jirajine
        12
    Jirajine  
       2020-04-24 12:11:35 +08:00 via Android
    jb 全家桶系列 java/kotlin 绝对是一等公民,其他语言的使用体验和功能远远不及。
    yukiloh
        13
    yukiloh  
       2020-04-24 12:15:17 +08:00
    哦,cpp 啊,我只知道 vscode+java
    为了应对 JB 到期再也不能花慈禧的银子特地花了半天研究了一下
    northisland
        14
    northisland  
       2020-04-24 12:16:23 +08:00
    不复杂的功能,用个编辑器写 ok 。

    但复杂但功能,有个 ide 还是美滋滋,单步调试不香么?
    biguokang
        15
    biguokang  
       2020-04-24 12:16:23 +08:00
    为什么要用 vscode 呢,vscode 只是个文本编辑器,谢谢前端和脚本语言还是可以的,但是用来跑 c 艹的就用 ide 吧
    jdz
        16
    jdz  
    OP
       2020-04-24 12:21:47 +08:00 via Android
    @biguokang c 艹的远程开发能达到 vscode remote-ssh 的效果吗
    biguokang
        17
    biguokang  
       2020-04-24 12:26:29 +08:00   1
    @jdz visual studio 可以
    nicebird
        18
    nicebird  
       2020-04-24 13:19:15 +08:00
    上 vs 吧,懒得搞这些。。
    lancelock
        19
    lancelock  
       2020-04-24 13:23:33 +08:00
    用 qt creator
    richard1122
        20
    richard1122  
       2020-04-24 14:05:34 +08:00
    可以试试用 vscode-clangd,复杂项目中会比自带的好用一些
    FireFoxAhri
        21
    FireFoxAhri  
       2020-04-24 14:09:50 +08:00   1
    写 C++不上 Visual Studio 干嘛。。之前写 hello world 大家都用 VC6.0 我都只用 visual studio
    jdz
        22
    jdz  
    OP
       2020-04-24 14:16:56 +08:00 via Android
    @FireFoxAhri 主要开发是 Linux 程序,所以担心 visual stdio 会不会不合适
    LokiSharp
        23
    LokiSharp  
       2020-04-24 14:20:43 +08:00
    如果你是觉得 IDE 重才换的 VSCode 。我想告诉你,跑起来比 VS 还重,在功能不全的情况下资源占用还不低 t/652883
    LokiSharp
        24
    LokiSharp  
       2020-04-24 14:21:30 +08:00
    还有个后续的 t/656636
    FireFoxAhri
        25
    FireFoxAhri  
       2020-04-24 14:24:24 +08:00
    @jdz 这个就不太清楚了,最新版我看介绍是支持 remote 到 linux 执行的。实在不行就 clion 了
    yingo
        26
    yingo  
       2020-04-24 14:24:43 +08:00
    写 c++ Windows 下推荐 visual studio + visual assist.
    linux 下自己搭 vim 环境.
    jdz
        27
    jdz  
    OP
       2020-04-24 14:30:24 +08:00 via Android
    @LokiSharp 资源倒没什么,电脑配置好些就行,主要是不知道 visual stdio 用来开发 linux 程序如何
    LokiSharp
        28
    LokiSharp  
       2020-04-24 14:47:04 +08:00
    @jdz #27 电脑配置足够的话还是用 VS 和 Clion 这样的 IDE 吧。折腾 VSCode 吃力不讨好
    viruser
        29
    viruser  
       2020-04-24 14:48:50 +08:00
    第一个要求好像不大行,就只能在 编译器里看报错 / LS 提示,然后修改了。第二个要求在 .vscode/c_cpp_properties.json 里的 includePath 里面加上相应的头文件地址就可以了。VSC 可以配合 CMake 之类的编译工具,加上自家的 LSP,写 C/CPP 其实还行。
    IDE 的功能全,就是平时感觉用不到那么多功能。
    misdake
        30
    misdake  
       2020-04-24 14:50:36 +08:00
    熟悉 IDEA 的话肯定首选 CLion 。
    lostpg
        31
    lostpg  
       2020-04-24 15:09:25 +08:00 via Android
    知乎上至少有两个帖是专门解答如何配置 vscode 的 cpp 环境,你去搜一搜,主要以 windows 环境为主,包括各种扩展的比较选择都有挺详细的讨论,而且都有后续更新。
    hideinbush
        32
    hideinbush  
       2020-04-24 15:15:39 +08:00
    vscode 用来单个文件刷题还比较合适。
    dlyxy
        33
    dlyxy  
       2020-04-24 17:28:24 +08:00
    写小程序的话 vs + resharper 、clion 都可以,代码很多的话最好单独用 vs
    csl1995
        34
    csl1995  
       2020-04-24 17:40:38 +08:00 via iPhone
    我是在 linux 下写 c++的,用 vim 就行了
    yourssheng
        35
    yourssheng  
       2020-04-24 17:43:11 +08:00
    都用了 idea 了,jb 全家桶不香吗。clion 啊
    newmlp
        36
    newmlp  
       2020-04-24 17:46:08 +08:00
    请用 vs
    Wicked
        37
    Wicked  
       2020-04-24 17:53:16 +08:00 via iPhone
    如果是只有 1,2 个文件的 demo,vscode + code runner 插件还可以,否则还是 vs 还
    ooops
        38
    ooops  
       2020-04-24 19:34:08 +08:00 via iPhone
    我和你说这是在浪费时间
    jdz
        39
    jdz  
    OP
       2020-04-24 19:35:43 +08:00 via Android
    @ooops windows 下开发 Linux 程序 有什么好的实践吗,我本身是不愿意用 Linux gui 的
    XanderChen
        40
    XanderChen  
       2020-04-24 19:52:42 +08:00
    你太瞧得起 vscode 了,

    另外 vs 如果只开发 c++ 只要装很少的东西,

    又不是不能自定义安装项,
    afx
        41
    afx  
       2020-04-24 20:19:45 +08:00 via iPhone
    linux 下用 vscode 的写代码至少自带补全和跳转,这个如果用 vim 来配的话,会劝退相当部分的人。楼上已经有人回答你的问题了,第一个不可以,第二个需要配置路径。从我的经验来看,折腾 vim 还是不如用 vscode 然后再装个 vim 插件的。
    codyfeng
        42
    codyfeng  
       2020-04-24 20:27:29 +08:00
    tmux + vim 足矣
    linliting45
        43
    linliting45  
       2020-04-25 02:46:20 +08:00
    vs 不是有一堆 Linux 开发插件,官方的、第三方的、收钱的都有
    cuminflea
        44
    cuminflea  
       2020-04-25 03:02:51 +08:00 via iPad
    vscode 写 cpp 可以的呀,反正用 emacs 和 vim 到最后也得调 lsp
    chanchan
        45
    chanchan  
       2020-04-25 08:59:38 +08:00 via Android
    要明白 ide 和编辑器就不是一个东西
    May725
        46
    May725  
       2020-04-25 09:11:36 +08:00
    我折腾过 vs 、vscode 的 linux 远程开发,不满意, 最终的做法是,linux 上安装 neovim + coc 补全插件 + Makefile 。coc 插件能够满足你的第 2 点要求。
    ftfunjth
        47
    ftfunjth  
       2020-04-25 12:48:47 +08:00 via Android
    只用 vim
    waruqi
        48
    waruqi  
       2020-04-25 13:51:44 +08:00 via Android
    vscode/vim + xmake
    wizardoz
        49
    wizardoz  
       2020-04-25 13:59:08 +08:00
    clion 的那是远程编译,个人感觉比 vscode 的 remote 要好用,毕竟这个代码是在本地的。
    icylogic
        50
    icylogic  
       2020-04-25 14:02:16 +08:00
    Windows 下 VS,Linux 下 CLion 。
    非要用 VSCode 可以装 ccls 。
    bef0rewind
        51
    bef0rewind  
       2020-04-25 18:48:44 +08:00
    @icylogic 赞同,现阶段 `ccls` 是比较好的方案。
    jdz
        52
    jdz  
    OP
       2020-04-25 20:22:40 +08:00 via Android
    @icylogic window 下 开发 Linux 程序什么方案好些
    codeboy18
        53
    codeboy18  
       2021-08-02 14:10:49 +08:00
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2300 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 15:54 PVG 23:54 LAX 08:54 JFK 11:54
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86