【Visual Studio】Visual Studio使用技巧及报错解决合集
目录
目录
一.概述
二.Visual Studio报错问题及解决方法
三.Visual Studio操作过程中遇到的问题及解决方法
四.Visual Studio编译优化选项
五.Visual Studio快捷键
一.概述
持续更新Visual Studio报错及解决方法,包括Visual Studio报错问题及解决方法、Visual Studio操作过程中遇到的问题及解决方法、Visual Studio编译优化选项、Visual Studio快捷键等内容
二.Visual Studio报错问题及解决方法
Visual Studio报错:error LNK2001
问题 : error LNK2001无法解析的外部符号
方法 : 检查类中的静态变量,是否在类外定义或初始化
Visual Studio报错:error C2061
问题:error C2061:“xxx”:本地函数定义是非法的
方法 :
1.一般这种情况会伴随着该文件有乱码出现,需要将编码方式修改为utf-8。
2.或者检查大括号是否匹配,可能存在丢失大括号的问题。
Visual Studio报错:error C1075
问题:error C1075:与左侧的大括号“{”匹配之前遇到文件结束
方法 :
1.首先检查大括号是否缺失
2.如果不存在大括号缺失的情况,同时编译警告⚠出现这样一句提示:
warning C4819:该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为Unicode格式以防止数据丢失
通常还会伴随error C2061错误,本地函数定义是非法的。
这时候的问题出现在文件编码上,可以看一下注释中的汉字是否乱码,调整编码为utf-8,或者对应正常显示中文的GBK编码就可以通过编译。
Visual Studio报错:error C4430
问题:报错内容error C4430
方法 : 属性->C/C++->高级->禁用特定警告,输入4430
Visual Studio报错error C3867
问题:
#include <iostream>
#include <typeinfo>
…
std::cout<<typeid(a).name<<std::endl;
执行以上语句报错error C3867:…
方法 : 方法调用加一个括号,使用typeid(a).name()
Visual Studio报错error C2872
问题:error C2872 不明确符号
方法:
1.函数库未正确加载,使用using namespace std;等
2.注意预处理器对宏的加载项,可以在vs-右键项目属性-C/C++-预处理器-预处理器定义,中把相应的宏补充进去
三.Visual Studio操作过程中遇到的问题及解决方法
Visual Studio如何显示行号
工具-->选项-->文本编辑器-->所有语言-->常规-->行号(勾选)
Visual Studio窗口中cout输出显示不全解决办法
问题:
如图,发现打印1000行,但是只显示了100行,前面的数据都看不到,有时候调试打印输出时需要看一下输出的结果,但是看不全。

方法:
右键输出黑框的头部标题栏,然后点击属性,在布局中,屏幕缓冲区大小,修改高度数值,可以修改成大一点的数字,这样cout就能显示完整了,同时还可以设置字体,包括字体样式,字体大小,还有颜色等。

四.Visual Studio编译优化选项
在Visual Studio中,编译优化选项是用于提高程序性能的重要工具。编译器提供了多种优化级别和选项,可以根据不同的需要进行选择。
在Visual Studio开发环境中,可以通过项目的属性页设置编译优化选项。选择“配置属性”>“C/C++”>“优化”属性页面,然后修改“优化”属性来启用或配置不同的优化选项。
以下是一些常见的编译优化选项:
/O1 和 /O2
-
/O1选项优化速度,但不是所有优化都启用。 -
/O2选项进一步优化速度,启用更多的优化选项,如内联函数、循环展开等。
/Ox
-
/Ox是一种编译器选项,它启用了/O2支持的速度优化选项的子集,但不包括/O1或/O2中的/GF(消除重复字符串)和/Gy(启用函数级链接)选项。
内联函数
-
使用
inline关键字或编译器选项(如-finline-functions)可以提示编译器内联函数,减少函数调用的开销。
虚函数优化
-
编译器选项
-fdevirtualize尝试将虚函数调用转换为直接调用,以减少虚函数调用的开销。
代码重排
-
选项如
-freorder-blocks和-freorder-functions允许编译器重新排列代码块或函数,以提高代码的局部性和执行效率。
循环优化
-
编译器提供了多种循环优化选项,如
-floop-unroll-and-jam(循环展开和合并)和-floop-parallelize-all(循环并行化)。
链接时间优化
-
使用
/GL(全程序优化)编译器选项和/LTCG(链接时间代码生成)链接器选项可以在链接时进行进一步的优化。
代码分割
-
使用
-ffunction-sections和-fdata-sections可以将代码和数据分割到不同的段中,有助于减少内存占用和提高加载效率。
数学优化
-
选项如
-ffast-math允许编译器使用更快但可能不够精确的数学运算。
其他优化选项
-
还有许多其他优化选项,如
-funroll-loops(循环展开)、-finline-limit(内联函数大小限制)等,可以根据具体情况选择使用。
五.Visual Studio快捷键
-
文件操作:
- 新建文件:Ctrl + N 10
- 打开文件:Ctrl + O 101213
- 保存所有:Ctrl + Shift + S 11
-
编辑操作:
- 注释选定内容:Ctrl + K, Ctrl + C 1015
- 取消注释选定内容:Ctrl + K, Ctrl + U 1015
- 复制:Ctrl + C
- 剪切:Ctrl + X
- 粘贴:Ctrl + V
-
代码导航:
- 转到定义:F12 1213
- 查找所有引用:Shift + F12 11
- 列出成员:Ctrl + J 或 Alt + J 10
-
调试操作:
- 开始调试:F5 1015
- 逐语句执行:F11 15
- 逐过程执行:F10 15
- 停止调试:Shift + F5 1115
- 设置或删除断点:F9 1115
-
视图操作:
- 解决方案资源管理器:Ctrl + Alt + L 11
- 属性窗口:F4 1012
-
代码生成:
- 生成解决方案:Ctrl + Shift + B 101115
- 重新生成解决方案或项目:Ctrl + E 10
-
窗口操作:
- 关闭当前文档:Ctrl + W 10
- 切换标题/代码文件:F4 10
-
其他:
- 格式化选定内容:Ctrl + K, Ctrl + F 10
- 删除一行:Ctrl + D 10
- 停止调试:Ctrl + Q 10
相关文章:
【Visual Studio】Visual Studio使用技巧及报错解决合集
目录 目录 一.概述 二.Visual Studio报错问题及解决方法 三.Visual Studio操作过程中遇到的问题及解决方法 四.Visual Studio编译优化选项 五.Visual Studio快捷键 一.概述 持续更新Visual Studio报错及解决方法,包括Visual Studio报错问题及解决方法、Visua…...
服务器数据恢复—raid5阵列热备盘同步失败导致lun不可用的数据恢复案例
服务器存储数据恢复环境: 华为S5300存储中有一组由16块FC硬盘组建的RAID5磁盘阵列(包含一块热备盘)。 服务器存储故障: 该存储中的RAID5阵列1块硬盘由于未知原因离线,热备盘上线并开始同步数据,数据同步到…...
算法题目整合
文章目录 121. 小红的区间翻转142. 两个字符串的最小 ASCII 删除总和143. 最长同值路径139.完美数140. 可爱串141. 好二叉树 121. 小红的区间翻转 小红拿到了两个长度为 n 的数组 a 和 b,她仅可以执行一次以下翻转操作:选择a数组中的一个区间[i, j]&…...
万界星空科技AI低代码平台:重塑数字化创新边界
在这个日新月异的数字化时代,技术的飞速发展正以前所未有的力量重塑着每一个行业。企业如何在瞬息万变的市场环境中保持竞争力,实现业务的快速迭代与创新? 重塑开发模式,加速数字化转型 传统软件开发周期长、成本高、门槛高&…...
iredmail服务器安装步骤详解!如何做配置?
iredmail服务器安全性设置指南?怎么升级邮件服务器? iredmail是一个功能强大的邮件服务器解决方案,它集成了多个开源软件,使您能够快速部署和管理邮件服务。AokSend将逐步引导您完成安装过程,无需深入的编程知识即可轻…...
【vue深入学习第1章】Vue.js 中的 Ajax 处理:vue-resource 库的深度解析
在现代前端开发中,Ajax 请求是与后端进行数据交互的关键技术。Vue.js 作为一个渐进式 JavaScript 框架,提供了多种方式来处理 Ajax 请求,其中 vue-resource 是一个较为常用的库。尽管 vue-resource 在 Vue 2.x 之后不再是官方推荐的 Ajax 处理…...
JDK新特性(Lambda表达式,Stream流)
Lambda表达式: Lambda 表达式背后的思想是函数式编程(Functional Programming)思想。在传统的面向对象编程中,程序主要由对象和对象之间的交互(方法调用)构成;而在函数式编程中,重点…...
【ARM】MDK-服务器与客户端不同网段内出现卡顿问题
【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 记录不同网段之间的请求发送情况以及MDK网络版license文件内设置的影响。 2、 问题场景 客户使用很久的MDK网络版,在获取授权时都会出现4-7秒的卡顿,无法对keil进行任何操作,彻底…...
c++树(一)定义,遍历
目录 树的定义 树的基本术语 树的初始起点:我们定义为根 树的层次: 树的定义: 树的性质 性质1: 性质2: 树形结构存储的两种思路 树的遍历模板 树上信息统计方式1-自顶向下统计 树上信息统计方式2-自底向上统…...
YOLOv5和LPRNet的车牌识别系统
车牌识别系统 YOLOv5和LPRNet的车牌识别系统结合了深度学习技术的先进车牌识别解决方案。该系统整合了YOLOv5目标检测框架和LPRNet文本识别模型 1. YOLOv5目标检测框架 YOLO是一种先进的目标检测算法,以其实时性能和高精度闻名。YOLOv5是在前几代基础上进行优化的…...
内容安全(深度行为检测技术、IPS、AV、入侵检测方法)
1、深度行为检测技术 深度行为检测技术:是一种基于深度学习和机器学习的技术,它通过分析用户在网络中的行为模式,识别异常或潜在威胁行为,从而保护网络安全和内容安全 分类: 深度包检测技术(Deep Packet…...
MySQL双主双从实现方式
双主双从(MM-SS) 前言 避免单一主服务器宕机,集群写入能力缺失 从 1 复制 主1 ,从 2 复制 主 2 主 1 复制 主 2,主 2 复制主 1 也就是 主 1 和主 2 互为主从。主1主2互为主从, 是为了以下情景,…...
pico+unity手柄和摄像机控制初级设置
1、摄像头配置 摄像头模式、floor是追踪原点类型(将根据设备检测到地面的高度来计算追踪原点), Device 模式时,为通常理解的 Eye 模式,不会将根据设备检测到地面的高度来计算追踪原点 选择floor时,修改相…...
vxe-grid 实现配置式form搜索条件 form搜索条件框可折叠 配置式table
文章目录 效果图代码 效果图 代码 <template><div class"app-container"><vxe-grid refxGrid v-bind"gridOptions" v-if"tableHeight" :height"tableHeight"><template #billDate"{ data }"><e…...
TS相较于JS有什么优缺点
TypeScript(TS)是JavaScript的一个超集,它添加了静态类型检查和编译时的强大功能,目的是提高代码质量和维护性。相较于JavaScript,TS的主要优点和缺点如下: 优点: 类型安全性:通过…...
【Harmony】SCU暑期实训鸿蒙开发学习日记Day2
目录 Git 参考文章 常用操作 ArkTS的网络编程 Http编程 发送请求 GET POST 处理响应 JSON数据解析 处理响应头 错误处理 Web组件 用生命周期钩子实现登录验证功能 思路 代码示例 解读 纯记录学习日记,杂乱,误点的师傅可以掉了…...
vue3前端开发-执行npm run dev提示报错怎么解决
vue3前端开发-执行npm run dev提示报错怎么解决!今天在本地安装初始化了一个vue3的案例demo。但是当我执行npm run dev想启动它时报错了说,找不到dev。让我检查package.json文件是否包含dev。如下图所示: 实际上,不必惊慌…...
https 单向认证和双向认证
单向认证 单向认证是客户端(通常是浏览器)验证服务器的身份。服务器向客户端提供数字证书,客户端通过验证该证书的真实性来确认与服务器的连接是安全的。 服务器提供证书:服务器向客户端提供一个数字证书,用于验证服务器的身份。客户端验证服务器:客户端验证服务器的证书…...
Python中Selenium 和 keyboard 库的使用
文章目录 一、Selenium基本使用2.等待元素加载常用操作 keyboard基本使用与 Selenium 联合使用 一、Selenium Selenium 是一个用于浏览器自动化的工具。它可以模拟用户与网页的交互,如点击按钮、填写表单、导航页面等。Selenium 支持多种编程语言,包括 …...
网络安全协议系列
目录 一、安全协议的引入 1.TCP/IP协议族中普通协议的安全缺陷 1.信息泄露 2.信息篡改 3.身份伪装 4.行为否认 2.网络安全需求 二、网络安全协议的定义 三、构建网络安全协议所需的组件 1.加密与解密 2.消息摘要 3.消息验证码 4.数字签名 5.密钥管理 1.建立共享…...
Qwen3-ASR-1.7B在数学建模竞赛中的语音数据处理应用
Qwen3-ASR-1.7B在数学建模竞赛中的语音数据处理应用 数学建模竞赛,听起来是不是有点“高大上”?其实说白了,就是给你一个现实世界的问题,让你用数学和计算机的方法去解决。这几年,竞赛题目越来越贴近生活,…...
Ostrakon-VL-8B效果展示:AI识别货架商品、检查消防通道真实案例
Ostrakon-VL-8B效果展示:AI识别货架商品、检查消防通道真实案例 1. 零售行业的视觉智能革命 走进任何一家超市或餐厅,你都会看到员工忙碌地进行各种检查:商品是否摆放整齐、货架是否需要补货、消防通道是否畅通。这些看似简单的工作&#x…...
**基于Python实现脉冲神经网络:从理论到代码的创新实践**在深度
基于Python实现脉冲神经网络:从理论到代码的创新实践 在深度学习飞速发展的今天,传统人工神经网络(ANN)已难以满足对生物可解释性和能效比更高的需求。而**脉冲神经网络(Spiking Neural Networks, SNN)**作…...
PMSM无感控制中滑模观测器的相位补偿与抖振优化
1. 滑模观测器在PMSM无感控制中的核心作用 永磁同步电机(PMSM)的无位置传感器控制技术中,滑模观测器(SMO)扮演着关键角色。这种控制方式不需要物理位置传感器,而是通过算法实时估算转子位置和速度。我在实…...
数字记忆策展:WeChatMsg与数据主权时代的个人记忆管理
数字记忆策展:WeChatMsg与数据主权时代的个人记忆管理 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeCha…...
Ollama部署避坑指南:Ubuntu环境下常见错误排查与性能优化
Ollama部署避坑指南:Ubuntu环境下常见错误排查与性能优化 在Ubuntu系统上部署Ollama时,即使是经验丰富的开发者也可能遇到各种"坑"。本文将深入剖析这些常见问题,并提供切实可行的解决方案,帮助您快速定位和解决问题&am…...
3大维度破解C盘空间困局:Windows Cleaner让系统重获新生的开源方案
3大维度破解C盘空间困局:Windows Cleaner让系统重获新生的开源方案 【免费下载链接】WindowsCleaner Windows Cleaner——专治C盘爆红及各种不服! 项目地址: https://gitcode.com/gh_mirrors/wi/WindowsCleaner 当你的电脑频繁弹出"磁盘空间…...
生信分析效率翻倍:fastp多线程+UMI处理技巧全解析(含实战案例)
生信分析效率翻倍:fastp多线程UMI处理技巧全解析(含实战案例) 在肿瘤基因检测和ctDNA测序领域,数据预处理环节往往成为整个分析流程的瓶颈。传统工具在处理海量测序数据时,不仅耗时长达数小时,还经常面临内…...
Qwen3.5-4B模型网络协议分析应用:模拟客户端与解析通信数据
Qwen3.5-4B模型网络协议分析应用:模拟客户端与解析通信数据 1. 网络协议分析的AI新思路 网络协议分析一直是运维工程师和安全研究人员的日常工作重点。传统方法需要人工查阅RFC文档、编写测试代码、分析抓包数据,整个过程耗时费力。Qwen3.5-4B模型的出…...
5分钟掌握终极资源下载神器:res-downloader跨平台智能嗅探工具
5分钟掌握终极资源下载神器:res-downloader跨平台智能嗅探工具 【免费下载链接】res-downloader 资源下载器、网络资源嗅探,支持微信视频号下载、网页抖音无水印下载、网页快手无水印视频下载、酷狗音乐下载等网络资源拦截下载! 项目地址: https://git…...
