方法1:

1.1 安装插件 C++ Intellisense

名称: C++ Intellisense
id: austin.code-gnu-global
说明: C/C++ Intellisense with the help of GNU Global tags
版本: 0.2.2
发布者: austin
VS Marketplace 链接: https://marketplace.visualstudio.com/items?itemName=austin.code-gnu-global

1.2 安装插件 C/C++ GNU Global

名称: C/C++ GNU Global
id: jaycetyle.vscode-gnu-global
说明: Intellisense for C/C++ using GNU Global
版本: 0.3.0
发布者: Lin Chieh
VS Marketplace 链接: https://marketplace.visualstudio.com/items?itemName=jaycetyle.vscode-gnu-global

1.3 下载 GNU GLOBAL

下载方法:
网址:https://www.gnu.org/software/global/

网页有时可能打不开,这里提供一个下载好的版本:
>> glo663wb.zip

1.4 配置 GNU GLOBAL

1.4.1 设置系统环境变量

1、解压 glo663we.zipC盘 根目录,并 glo663wb 重命名为 global

2、此电脑 > 属性 > 更改设置 > 高级 > 环境变量 > 系统变量 > 新建 > 变量名:global > 变量值:C:\global\bin,即把环境变量值设置到 globalbin 路径下,因为该路径下有 global.exegtags.exe,后续在 vs code 里边建立标签时,需要调用这两个程序,自动调用,用户不用管,这里设置好就行;


3、重启电脑使新增的系统变量生效。

1.4.2 配置 vs code 的 settings.json

1、在 vs code 里边打开 settings.json,打开方法这里就不描述了,不会了网上搜索吧。添加以下两行 json 数据,后边的路劲根据实际路径更改:

"gnuGlobal.globalExecutable": "C:\\global\\bin\\global.exe",
"gnuGlobal.gtagsExecutable": "C:\\global\\bin\\gtags.exe"

2、配置完成后重启 vs code;

3、打开一个项目文件夹,按 F1,然后先后运行以下两条命令,看提示是否成功,若提示成功就好了:

//查看 GNU GLOBAL 版本,如果成功屏幕右下角会提示版本信息
Global: Show GNU Global Version
//建立索引,有了索引才能跳转,如果成功屏幕右下角会提示标签建立成功
Global: Rebuild Gtags Database

4、快捷键和命令参看 C/C++ GNU Global 插件说明。

1.5 注意事项

1、一定不要安装官方 C/C++ 插件,如果安装了请卸载。

2、步骤 1.1~1.4 解决了函数定义跳转问题,和部分自动补全问题,再加上 vs code 本身支持输入过的内容会自动提示,就完全解决了自动补全问题。

输入过的内容会自动提示:(注意有个 abc)

3、vs code 中已输入过的内容自动提示功能,前边的图标是 abcC/C++ GNU Global 自动提示功能前边的图标是一个扳手。安装完 C/C++ GNU Global 插件后,该插件的自动提示功能会部分屏蔽掉 vs code 本身已输入过的内容自动提示功能。此时,可能会遇到如下情况,前边输入过的内容,后边自动补全提示列表没有,自动提示列表只有扳手图标,没有 abc 图标,此时打开 C/C++ GNU Global 设置,把 Gnu global: Completion 设置为 Disable,即可关闭 C/C++ GNU Global 的自动提示功能,恢复 vs code 本身已输入过的内容自动提示功能。

方法2:


未完 ......

点击访问原文(进入后根据右侧标签,快速定位到本文)

Visual Studio Code 中实现 C++ 函数定义跳转和代码自动补全功能(25)的更多相关文章

  1. Visual Studio Code中文文档(一)-快速入门

    Visual Studio Code是一个轻量级但是十分强大的源代码编辑器,重要的是它在Windows, OS X 和Linux操作系统的桌面上均可运行.Visual Studio Code内置了对J ...

  2. Visual Studio Code中文文档

    Visual Studio Code中文文档 Visual Studio Code是一个轻量级但是十分强大的源代码编辑器,重要的是它在Windows, OS X 和Linux操作系统的桌面上均可运行. ...

  3. 在 Visual Studio Code 中使用 PoweShell - CodeShell

    一直希望在 Visual Studio Code 中使用 PowerShell,插件 CodeShell 提供了对于 PowerShell 的支持. 安装 首先按 F1,打开命令窗口,输入安装插件的命 ...

  4. Visual Studio Code中配置GO开发环境

    在Visual Studio Code中配置GO开发环境 一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的 ...

  5. SharePoint Framework 在Visual Studio Code中调试你的本地解决方案

    博客地址:http://blog.csdn.net/FoxDave Visual Studio Code不知道大家都有没有,界面清爽,编辑快速,是一个非常好的前端开发工具.本文介绍如何使用Goog ...

  6. 如何在"Visual Studio Code"中使用" Git" 进行版本控制

    如何在"Visual Studio Code"中使用" Git" 进行版本控制 本来认为此类教程,肯定是满网飞了.今天首次使用VS Code的Git功能,翻遍了 ...

  7. Visual Studio Code中C/C++的环境配置

    Visual Studio Code 的功能十分强大,但是对我这种小白不是很友好,它和其它的集成开发工具不同,Visual Studio Code (以下简称VS)自身其实仅仅是一个编辑器, 是不具备 ...

  8. 在Visual Studio Code 中配置Python 中文乱码问题

    在Visual Studio Code 中配置Python 中文乱码问题 方法一:直接代码修改字符集 添加前四行代码 import io import sys #改变标准输出的默认编码 sys.std ...

  9. 解决VS Code开发Python3语言自动补全功能不带括号的问题

    Visual Studio Code(以下简称VS Code)用来开发Python3,还是很便利的,本身这个IDE就是轻量级的,才几十兆大小,通过安装插件的方式支持各种语言的开发.界面也美美哒,可以在 ...

随机推荐

  1. 利用Unicode RTLO方法构建恶意文件名

    一:简介 RTLO"字符全名为"RIGHT-TO-LEFTOVERRIDE",是一个不可显示的控制类字符,其本质是unicode 字符."RTLO"字 ...

  2. LDA算法 (主题模型算法) 学习笔记

    转载请注明出处: http://www.cnblogs.com/gufeiyang 随着互联网的发展,文本分析越来越受到重视.由于文本格式的复杂性,人们往往很难直接利用文本进行分析.因此一些将文本数值 ...

  3. RabbitMQ Management API调用

    RabbitMQ在运行时,偶尔会有一些死信,即消息未正常消费,造成消息积压在消息队列中, 一直卡住,重复循环消费原来的消息队列 那么就需要有一种机制,来查看RabbitMQ是否有消息未正常消费,从而让 ...

  4. sql中的表值函数与标量值函数区别与用法

    通俗来讲: 听名字就知道区别了 表值函数返回的是一张表结果,就和一个select查询语句一样,只不过里面带入了参数或者很复杂:标量值函数返回的只是一个值 一 .表值函数又分为内联函数与多语句函数 (1 ...

  5. (信贷风控九)行为评分卡模型python实现

    python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...

  6. (信贷风控八)行为评分卡模型(B卡)的介绍

    python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...

  7. MySQL创建双主键

    如下: CREATE TABLE `loginlog` ( `id` ) unsigned zerofill NOT NULL AUTO_INCREMENT COMMENT '主键编号', `IP` ...

  8. Flutter实战(四)---LoadingDialog

    原文链接:https://blog.csdn.net/johnWcheung/article/details/89634582

  9. 深入学习c++--lambda函数

    1. 简单使用 #include <iostream> #include <functional> using namespace std; struct Print { vo ...

  10. elasticsearch in语句和not in语句

    sql语句示例: select * from table where t_id in (1,2,3,4) php代码示例: $search_query = [ "bool" =&g ...