微软VSCode的常用操作和常用设置

微软的Visual Studio Code(VSCode)编辑器是因为其简洁高效,轻量级,是很多程序员的选择,如何快速上手并使用,本文将对vscode在C/C++下的应用进行简单介绍。

软件下载

建议大家去官方网站按需进行下载:https://code.visualstudio.com/
在这里插入图片描述
我们可能会选择下载免安装版本,这样右键菜单会没有使用VScode打开的选项,我们可以使用下面的reg脚本进行注册表添加,新建txt文件,负责下面的脚本,修改其中的路径,然后修改文件后缀为.reg,然后双击执行。

Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\VSCode]
@="Open with Code"
"Icon"="D:\\Program Files\\VSCode-Win32-x64-1.70.2\\Code.exe"[HKEY_CLASSES_ROOT\*\shell\VSCode\command]
@="\"D:\\Program Files\\VSCode-Win32-x64-1.70.2\\Code.exe\" \"%1\""Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Directory\shell\VSCode]
@="Open with Code"
"Icon"="D:\\Program Files\\VSCode-Win32-x64-1.70.2\\Code.exe"[HKEY_CLASSES_ROOT\Directory\shell\VSCode\command]
@="\"D:\\Program Files\\VSCode-Win32-x64-1.70.2\\Code.exe\" \"%V\""Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode]
@="Open with Code"
"Icon"="D:\\Program Files\\VSCode-Win32-x64-1.70.2\\Code.exe"[HKEY_CLASSES_ROOT\Directory\Background\shell\VSCode\command]
@="\"D:\\Program Files\\VSCode-Win32-x64-1.70.2\\Code.exe\" \"%V\""

插件安装

安装完VScode后一般需要下载一些插件,这样用着才会顺手,一般你选择编程语言后,VScode会进行推荐,下面试C/C++推荐的一些常用的。

在这里插入图片描述
如果我们换电脑了,积累的常用插件可以去对应目录去找,然后复制到新电脑里,实现插件的同步。
vscode插件默认的安装位置是:C:\Users\用户名.vscode\extensions
如果不想把插件安装在C盘的话,可以自己新建一个文件来存储插件,然后在快捷方式的目标中修改路径,在原本的目标后加入–extensions-dir “新的插件存储位置”,例如:“D:\Program Files\Microsoft VS Code\Code.exe” --extensions-dir “D:\Program Files\Microsoft VS Code\extensions”
当然你如果能够联网,那可以使用账户的同步配置功能。

格式化代码

我们可以设置编码风格,然后通过右键的格式化进行编码风格的统一,编码风格可以设置.clang-format文件,Clang_format_style设置为file,将.clang-format文件放到需要设置的文件夹下,VScode会从当前目录网上逐级目录寻找,如果找不到.clang-format文件,则会按照Clang_format_fallback_style设置的进行默认配置。

Clang_format_fallback_style可以设置成VScode模式或者google模式,或者是基于这两个进行简单的修改。

myself  { BasedOnStyle: LLVM, AllowShortFunctionsOnASingleLine: Inline, AllowShortIfStatementsOnASingleLine: false, AlwaysBreakTemplateDeclarations: true, SpaceAfterTemplateKeyword: false, ColumnLimit: 120, Standard: Cpp11, IndentWidth: 4, TabWidth: 4, AccessModifierOffset: -4, UseTab: Never, BreakBeforeBraces: Allman }vscode { BasedOnStyle: LLVM, UseTab: Never, IndentWidth: 4, TabWidth: 4, BreakBeforeBraces: Linux, AllowShortIfStatementsOnASingleLine: false, IndentCaseLabels: false, ColumnLimit: 0, AccessModifierOffset: -4, NamespaceIndentation: All, FixNamespaceComments: false }
google { BasedOnStyle: LLVM, UseTab: Never, IndentWidth: 4, TabWidth: 4, BreakBeforeBraces: Allman, AllowShortIfStatementsOnASingleLine: false, IndentCaseLabels: false, ColumnLimit: 0, AccessModifierOffset: -4, NamespaceIndentation: All, FixNamespaceComments: false }

在这里插入图片描述
.clang_format文件

---
Language:        Cpp
# BasedOnStyle:  LLVM
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignConsecutiveMacros: true
# AlignConsecutiveStyle: AcrossEmptyLinesAndComments
AlignEscapedNewlines: Left
AlignOperands:   true
AlignTrailingComments: true
AllowAllArgumentsOnNextLine: false
AllowAllConstructorInitializersOnNextLine: false
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
# AllowShortEnumsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: true
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: true
BinPackArguments: false
BinPackParameters: false
BraceWrapping:AfterCaseLabel:  falseAfterClass:      falseAfterControlStatement: falseAfterEnum:       falseAfterFunction:   falseAfterNamespace:  falseAfterObjCDeclaration: falseAfterStruct:     falseAfterUnion:      falseAfterExternBlock: falseBeforeCatch:     falseBeforeElse:      falseIndentBraces:    falseSplitEmptyFunction: trueSplitEmptyRecord: trueSplitEmptyNamespace: true
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Linux
BreakBeforeInheritanceComma: false
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeColon
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: true
ColumnLimit:     120
CommentPragmas:  '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: true
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DeriveLineEnding: true
DerivePointerAlignment: false
DisableFormat:   false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
ForEachMacros:- foreach- Q_FOREACH- BOOST_FOREACH- list_for_each_entry
IncludeBlocks:   Preserve
IncludeCategories:- Regex:           '^"(llvm|llvm-c|clang|clang-c)/'Priority:        2SortPriority:    0- Regex:           '^(<|"(gtest|gmock|isl|json)/)'Priority:        3SortPriority:    0- Regex:           '.*'Priority:        1SortPriority:    0
IncludeIsMainRegex: '(Test)?$'
IncludeIsMainSourceRegex: ''
IndentCaseLabels: true
IndentGotoLabels: true
IndentPPDirectives: None
IndentWidth:     4
IndentWrappedFunctionNames: false
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: true
MacroBlockBegin: ''
MacroBlockEnd:   ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: All
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 2
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 20
PenaltyBreakBeforeFirstCallParameter: 50
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 6000
PointerAlignment: Right
ReflowComments:  true
SortIncludes:    false
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyBlock: false
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles:  false
SpacesInConditionalStatement: false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpaceBeforeSquareBrackets: false
Standard:        Latest
StatementMacros:- Q_UNUSED- QT_REQUIRE_VERSION
TabWidth:        8
UseCRLF:         false
UseTab:          Never
...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/23396.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VScode配置task和launch支持C++11

title: VScode配置task和launch date: 2022-12-12 20:57:26 cover: categories: VisualCode tags: debug VScode配置task和launch支持C11 刚开始使用VScode一般都是使用默认的task和lunch配置去执行代码或者debug&#xff0c;一旦修改了相关目录或者改动一些参数&#xff0c;…

2023最新最全vscode插件精选

文章简介 本文介绍最新、最实用、最强大的 vscode 精选扩展。好用的扩展&#xff0c;犹如神兵利器&#xff0c;帮助程序员在代码的世界中&#xff0c;所向披靡&#xff0c;战无不胜&#xff01; 作者介绍 随易出品&#xff0c;必属精品&#xff0c;只写有深度&#xff0c;有质…

将vscode打造为你的开发工具的首选

文章目录 前言vscode主要配置vscode的两个主要快捷键创建你的代码模版Java配置JDK和Gradle环境主要插件常见的配置launch.json配置运行测试用例常见问题常用快捷键 Python主要插件settings.json配置launch.json配置示例 Javascript/typescript常用插件settings.json样例 Golang…

20230512-VSCode-配置C++17-win11-22h2

20230512-VSCode-配置C17-win11-22h2 一、软件环境 标签&#xff1a;C VSCode w64devkit gcc12分栏&#xff1a;C操作系统&#xff1a;Windows11 x64 22h2编译器&#xff1a;vscode-1.78.2 w64devkit-1.18.0 二、操作步骤 1. 下载安装VScode 官网 打开官网【https://code…

VsCode超实用插件推荐,让你的开发效率火力全开

辅助开发类&#xff1a; 1. Vetur VUE开发必备插件 1.语法高亮&#xff0c;包括 vue/html css/sass/scss/less/stylus js/ts 2.语义高亮&#xff0c;除了支持template模板以外&#xff0c;还支持大多数主流的前端开发脚本和插件 3.语法错误检查&#xff0c;包括 CSS/SCSS/LE…

VScode插件推荐以及settings配置

1.[Deprecated] Bracket Pair Colorizer 2&#xff1a;一个可定制的扩展&#xff0c;用于为匹配的括号着色。 2.Ant Design Vue helper&#xff1a;antDesign的扩展工具&#xff08;别的ui框架也有这样的插件&#xff0c;可以根据自己的需求下载&#xff09;。 3.Auto Close …

搭建自己的聊天室平台、公司内部聊天平台,Rocket.Chat搭建及使用

一&#xff0c;简介 rocket.chat是一个开源的社交软件&#xff0c;即可以直接在web页面使用&#xff0c;也可以下载APP(Android&#xff0c;IOS&#xff0c;Windows&#xff0c;Mac OS) 主要功能&#xff1a;群组聊天&#xff0c;直接通信&#xff0c;私聊群&#xff0c;桌面…

网络内部搭建NTP服务器

医院内部很多服务器及科室客户端电脑经常出现时间不一致的状况&#xff0c;导致收费、挂号及检查等项目出现问题。因为现在医院都部署了银医&#xff0c;通过微信、支付宝等互联网应用实现挂号、收费、报告查询等。所以可以在医院内外网互联的前置机上部署一个NTP服务&#xff…

解决登录提示Access denied,You do not have access to chat.openai.com

在登录使用相关AI对话服务时&#xff0c;登录提示&#xff1a; Access denied You do not have access to chat.openai.com. The site owner may have set restrictions that prevent you from accessing the site. 原因是IP被阻挡了&#xff0c;参考解决&#xff1a; 解决访问…

报错https://chat.openai.com/ api/auth/ session 429怎么办

报错https://chat.openai.com/ api/auth/ session 429怎么办 记录一下今天遇到的bug 场景是这样的&#xff1a;我正常进入chatgpt的提问页面&#xff0c;然后一直转圈&#xff0c;重新登陆&#xff0c;清楚浏览器缓存&#xff0c;都不行。 文章目录 报错https://chat.openai.c…

用了cloudflare后,网站提示Sorry, you have been blocked怎么解决?

其实cloudflare还是非常智能的&#xff0c;但有时候为了安全起见&#xff0c;我们在网站后台修改参数的时候会被CF拦截&#xff0c;我就遇到了好几次提示Sorry, you have been blocked的情况。 遇到这种情况后&#xff0c;我首先找了官方的说明文档&#xff0c;但操作了半天好…

最新版腾讯防水墙(二代)识别

2022最新版腾讯防水墙&#xff08;二代&#xff09;识别 戳这里→康康你手机号在过多少网站注册过&#xff01;&#xff01;&#xff01; 友情推荐&#xff1a;新一代安全短信 * 验证码地址&#xff1a;https://007.qq.com/online.html * 使用OpenCv模板匹配 * 成功率90%左右…

使用大型语言模(LLM)构建系统(七):评估1

今天我学习了DeepLearning.AI的 Building Systems with LLM 的在线课程&#xff0c;我想和大家一起分享一下该门课程的一些主要内容。之前我们已经学习了下面这些知识&#xff1a; 使用大型语言模(LLM)构建系统(一)&#xff1a;分类使用大型语言模(LLM)构建系统(二):内容审核、…

chatgpt赋能Python-python_def函数报错

如何关闭Python Console 在Python编程中&#xff0c;Python Console是一个常用的工具&#xff0c;它可以用来测试和调试代码、查看变量和函数等等。但是&#xff0c;在一些情况下&#xff0c;你可能需要关闭Python Console以便进行其他操作。那么&#xff0c;如何关闭Python C…

chatgpt赋能Python-python_nonetype报错

Python NoneType报错&#xff1a;原因、解决方法和预防措施 Python 是一种面向对象的高级编程语言&#xff0c;用于快速编写脚本和应用程序。但是&#xff0c;当我们在编写 Python 代码时&#xff0c;可能会遇到 NoneType 报错&#xff1b;这是一种类型错误&#xff0c;它发生…

main函数的行参(argc、argv)实例解释

目录 前言 一、问题描述 二、行参含义 三、题目应用 1、代码&#xff08;重点在中文批注处&#xff09; 2、执行测试 前言 在做CS50 Week3的problem set--plurality时&#xff0c;遇到main函数里带了两个行参&#xff08;int argc&#xff0c; string argv[]&#xff09;…

LLM探索:GPT类模型的几个常用参数 Top-k, Top-p, Temperature

Top-k抽样模型从最可能的"k"个选项中随机选择一个如果k10&#xff0c;模型将从最可能的10个单词中选择一个Top-p抽样模型从累计概率大于或等于“p”的最小集合中随机选择一个如果p0.9&#xff0c;选择的单词集将是概率累计到0.9的那部分Temperature控制生成文本随机性…

GPT-4震撼发布:如何加入候补名单

ChatGPT 点燃了科技行业的明灯&#xff0c;GPT-4 能燎原吗&#xff1f; 谁能革得了 ChatGPT 的命&#xff1f;现在看来还是 OpenAI 自己。 在 ChatGPT 引爆科技领域之后&#xff0c;人们一直在讨论 AI「下一步」的发展会是什么&#xff0c;很多学者都提到了多模态&#xff0c;我…

chatgpt赋能python:如何用Python打造一个简单的抽奖程序

如何用Python打造一个简单的抽奖程序 随着互联网的不断发展&#xff0c;抽奖活动已经成为了各种营销活动的必备环节&#xff0c;因此如何快速便捷地实现一个抽奖程序也变得尤为重要。本文将介绍如何使用Python打造一个简单的抽奖程序。 一、抽奖程序的工作原理 抽奖程序的核…

一文读懂 ChatGPT 插件功能:语言模型获取新信息的“眼睛和耳朵”

来源&#xff1a;OpenAI 编译&#xff1a;巴比特 图片来源&#xff1a;由无界 AI工具生成 OpenAI&#xff1a;我们已经在 ChatGPT 中实现了对插件的初步支持。插件是专门为语言模型设计的工具&#xff0c;以安全为核心原则&#xff0c;并帮助 ChatGPT 访问最新的信息&#xff0…