无用挂件の日记

盘点一番VSCode在Win10上遇到的那点大坑

最近某土豆学习C++的热情高涨,然而还没开始敲代码就遇到了一堆(连我都没法解决的)大坑。(毕竟我也是很久没用Windows)凭着战斗民族死磕到底的精神(滑稽),基本算是解决了问题。

初步安装

大概步骤如下:

  • Install MinGW-Get
  • Add C:\MinGW\bin to SysPath
  • Execute mingw-get install gcc and mingw-get install g++
  • Install VSCode

Powershell中文乱码

这是由于辣鸡Microsoft默认使用ANSI编码(这种历史的糟粕)导致的,有如下三种解决方案:

1、复制代码,使用记事本粘贴保存
2、针对Powershell强制启用UTF-8编码:复制粘贴如下内容,保存为.reg执行

1
2
3
4
Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Console\%SystemRoot%_System32_WindowsPowerShell_v1.0_powershell.exe]
"CodePage"=dword:0000fde9

3、强制开启全局UTF-8,一劳永逸:
Control Panel–>Region–>Administrative–>Change System Locate–>Beta:Use Unicode UTF-8


VSCode终端/调试输出乱码

如上,法2、法3均可


VSCode提示C++引用库无效(IncludePath)

这个问题相当头疼。无独有偶,Eizo同学也碰上了这个问题。
Github Issue、Stack Overflow都有讨论IncludePath的,多半是修改.vscode/c_cpp_properties.json。然而这种方式只能针对特定Project文件夹生效,相当麻烦。
其实很简单:依次打开VSCode Settings–>@ext:ms-vscode.cpptools–>Default:Include Path,并向settings.json中插入如下内容(注意json语法)

1
2
3
4
5
6
7
8
"C_Cpp.default.includePath": ["${workspaceFolder}",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++",
"C:/MinGW/include",
"C:/MinGW/bin",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++/mingw32",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include/c++/backward",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include-fixed"]

VSCode没有Mac版的毛玻璃效果

在VSCode应用商店中安装eyhn.vscode-vibrancy插件,并设置Opacity为-2、Type为acrylic即可。


VSCode不能断点测试或者直接运行代码

  • 安装GDB:mingw-get install gdb
  • 安装Code Runner插件

Run code时无法输入数据

Settings中搜索run code config,启用Run in terminal即可。