Visual Studio工程实践开发 C++

  • Visual Studio Code 是比较轻量级的Visual Studio。
    在这里插入图片描述
  • Code Blocks 作为开发平台,更轻量级。可以更好的进行语法规范。加强语法理解。
    在这里插入图片描述
  • Qt。

Visual Studio 介绍

Visual Studio的安装

Visual Studio 2022最新版安装教程(数千字图文详解),一步步教会你如何安装并运行VS2022(+背景图设置)

在这里插入图片描述
在这里插入图片描述
学会善于利用输出框的内容。进行错误代码定位。
在调试中选择开始调试与开始执行(不调试)效果可能不同,这设计到黑框是否一闪而过。

工具配置

可以通过多种方式在 Visual Studio 中更改字体和颜色。 例如,可以将默认的蓝色主题更改为深色主题(也称为“深色模式”)。 如果最适合你的需求,还可以选择一个额外的对比度主题。 另外,还可以在 IDE 和代码编辑器中更改默认字体和文本大小。

更改颜色主题

下面介绍如何在 Visual Studio 中更改 IDE 框架和工具窗口的颜色主题。

在菜单栏上,依次选择“工具” > “选项” 。

在选项列表中,选择“环境” > “常规” 。

在“颜色主题”列表中,选择默认的“蓝色”主题、“浅色”主题、“深色”主题或“蓝色(额外对比度)”主题。
在这里插入图片描述

更改字体和文本大小

可以更改所有 IDE 框架和工具窗口的字体和文本大小,也可以仅为某些窗口或文本元素更改字体和文本大小。 还可以更改编辑器中的字体和文本大小。靠上show复选框是修改哪个部位的字体及大小,一般选环境可已更改整个界面,Font复选框主要是字体,推荐使用consolas字体。

更改 IDE 中的字体和文本大小

  1. 在菜单栏上,依次选择“工具” > “选项” 。
  2. 在选项列表中,选择“环境” > “字体和颜色” 。
  3. 在“显示以下对象的设置”列表中,选择“环境”。

在这里插入图片描述

  1. 修改“字体”和“大小”选项,以更改 IDE 的字体和文本大小。
  2. 在“显示项”中选择合适的项,然后修改“项前景”和“项背景”选项。

更改编辑器中的字体和文本大小

  1. 在菜单栏上,依次选择“工具” > “选项” 。
  2. 在选项列表中,选择“环境” > “字体和颜色” 。
  3. 在“显示以下对象的设置”列表中,选择“文本编辑器”。
    在这里插入图片描述
  4. 修改“字体”和“大小”选项,以更改编辑器的字体和文本大小。
  5. 在“显示项”中选择合适的项,然后修改“项前景”和“项背景”选项。

Visual Studio解决方案

解决方案是一个容器,用于组织一个或多个相关的代码项目,例如,一个类库项目和一个对应的测试项目。 我们会介绍项目的属性和其中包含的一些文件。 此外,我们还会在一个项目中创建对另一项目的引用。

尽管其名称如此,但解决方案并不是“答案”。 解决方案仅仅是 Visual Studio 用来组织一个或多个相关项目的容器。 在 Visual Studio 中打开解决方案时,它会自动加载其中包含的所有项目。

创建解决方案

我们先创建一个空的解决方案。 对 Visual Studio 有一定了解后,可能就不会经常创建空的解决方案。 在 Visual Studio 中创建新项目时,如果没有打开的解决方案,它会自动创建一个解决方案来存放项目。

  1. 打开 Visual Studio。
  2. 在“开始”窗口中,选择“创建新项目”。
  3. 在“创建新项目”页上,在搜索框中输入“空白解决方案”,选择“空白解决方案”模板,然后选择“下一步” 。
  4. 将解决方案命名为“test”,然后选择“创建” 。

解决方案将显示在 Visual Studio 窗口右侧的解决方案资源管理器中 。 你可能会经常使用“解决方案资源管理器”来浏览项目的内容 。

如果你安装了多个工作负载,那么空白解决方案模板可能不会出现在搜索结果列表的顶部。 尝试滚动到列表的“基于你搜索的其他结果”部分。它应该出现在那里。

添加项目

在这里插入图片描述

  1. 现在我们将第一个项目添加到解决方案。 先从空项目开始,将所需项添加到项目中。
  2. 在“解决方案资源管理器”中的“解决方案 ‘test’”的右键菜单或上下文菜单中,依次选择“添加”>“新建项目” 。
  3. 随即打开显示“添加新项目”的对话框 。
  4. 在顶部的搜索框中输入文本“空”,然后在“语言”下选择“C++”。
  5. 然后选择“空项目”模板并选择“下一步” 。
  6. 将项目命名为“test”,然后选择“创建” 。

Visual Studio其它功能

模块化安装

凭借 Visual Studio 的模块化安装程序,可以选择和安装工作负载 。 工作负载是你的首选编程语言或平台所需的功能组。 此策略使安装 Visual Studio 占用的空间更小,这也意味着安装和更新速度更快。

创建 Azure 云启用应用

通过 Visual Studio 提供的工具套件,可以轻松地创建由 Microsoft Azure 提供支持的云启用应用程序。 可以轻松地从 IDE 直接配置、构建、调试、打包和部署 Microsoft Azure 上的应用程序和服务。 若要获取 Azure 工具和项目模板,安装 Visual Studio 时请选择“Azure 开发” 工作负载。
在这里插入图片描述

通过 Visual Studio 的 Cloud Explorer,可以查看和管理 Visual Studio 中基于 Azure 的云资源。 这些资源可能包括虚拟机、表、SQL 数据库等。 Cloud Explorer 可以显示登录的 Azure 订阅下托管的所有帐户中的 Azure 资源 。 如果某一特定操作需要 Azure 门户,Cloud Explorer 将提供相应链接,转到 门户中的所需位置 。
在这里插入图片描述

可通过以下连接服务为应用使用 Azure 服务 :

  • Active Directory 连接服务,借助该服务,用户可通过 Azure Active Directory 帐户连接到 Web 应用
  • Azure 存储连接服务,该服务适用于 blob 存储、队列和表
  • 密钥保管库连接服务,可用于管理 Web 应用的机密

项目类型决定了可用的连接服务 。 右键单击“解决方案资源管理器”中的项目并选择“添加” > “连接服务”来添加服务。
在这里插入图片描述

创建 web 应用

Web 推动着现代社会前进,Visual Studio 可以帮助你编写 Web 应用。 可以使用 ASP.NET、Node.js、Python、JavaScript 和 TypeScript 来创建 Web 应用。 Visual Studio 了解 Angular、jQuery、Express 等 Web 框架。 ASP.NET Core 和 .NET Core 在 Windows、Mac 和 Linux 操作系统上运行。 ASP.NET Core 是 MVC、WebAPI 和 SignalR 的一个重大更新,并在 Windows、Mac 和 Linux 上运行。 ASP.NET Core 旨在完全为你提供可组合的精益 .NET 堆栈,以便生成基于云的新式 Web 应用和服务。

生成跨平台应用和游戏

可使用 Visual Studio 生成适用于 macOS、Linux 和 Windows,以及 Android、iOS 和其他移动设备的应用和游戏。

  • 生成在 Windows、macOS 和 Linux 上运行的 .NET Core 应用。
  • 通过使用 Xamarin,在 C# 和 F# 中生成适用于 iOS、Android 和 Windows 的移动应用。
  • 通过 Apache Cordova,使用标准 Web 技术 —HTML、CSS 和 JavaScript— 生成适用于 iOS
  • Android 和 Windows 的移动应用。
  • 通过使用 Visual Studio Tools for Unity,在 C# 中生成 2D 和 3D 游戏。
  • 生成适用于 iOS、Android 和 Windows 设备的本机 C++ 应用。 通过适用于跨平台开发的 C++
  • 在专用于 iOS、Android 和 Windows 的库中分享通用代码。
  • 通过 Android 仿真器部署、测试和调试 Android 应用。

连接到数据库

服务器资源管理器有助于你浏览和管理本地、远程以及 Azure、Salesforce.com、Microsoft 365 和网站上的 SQL Server 实例及资产。 若要打开“服务器资源管理器” ,请依次选择主菜单上的“视图” > “服务器资源管理器” 。 有关使用服务器资源管理器的详细信息,请参阅添加新连接。

SQL Server Data Tools (SSDT) 是一个适用于 SQL Server、Azure SQL 数据库和 Azure SQL 数据仓库的强大的开发环境。 通过它可以生成、调试、维护和重构数据库。 可使用数据库项目,或直接使用已连接的数据库实例(本地或非本地)。

Visual Studio 中的 SQL Server 对象资源管理器 提供类似于 SQL Server Management Studio 中的数据库对象。 使用 SQL Server 对象资源管理器可以执行轻负载数据库的管理和设计工作。 工作示例包括使用 SQL Server 对象资源管理器的上下文菜单编辑表数据、对比架构和执行查询等等。

调试、测试和改进代码

编写代码时,需要运行并测试该代码以了解 bug 和性能。 使用 Visual Studio 先进的调试系统,可以调试在本地项目、远程设备或设备仿真器上运行的代码。 可单步执行代码,一次执行一条语句,逐步检查变量。 可设置仅当指定条件为真时才命中的断点。 在代码编辑器中可以管理调试选项,因此无需离开代码。 有关在 Visual Studio 中进行调试的详细信息,请参阅初探调试器。

有关提升应用性能的详细信息,请参阅 Visual Studio 的分析功能。

针对测试,Visual Studio 提供单元测试、Live Unit Testing、IntelliTest、负载和性能测试等。 Visual Studio 还拥有高级的代码分析功能,可捕获设计、安全性和其他类型的缺陷。

常规断点调试

  1. F9:光标到某一行,按F9可以给该行设置断点,或者取消断点;
  2. F5:执行程序到第一个断点停下;
  3. F10:逐过程,一行行执行,但是函数那些算一块执行;
  4. F11:逐语句,可进入函数一行行执行;
  5. Shift + F11:可跳出当前的函数

快速监视窗口
shift + F9:当程序运行到断点处,按这个键能出现快速监视窗口,如下所示,查看m对应的值和类型:
在这里插入图片描述
查看a的地址,输入&a:
在这里插入图片描述

部署完成的应用程序

当应用程序准备好部署给用户或客户时,Visual Studio 会提供执行此操作的工具。 部署选项会附加到 Microsoft Store、SharePoint 站点或者 InstallShield 或 Windows Installer 技术。 这些都可以通过 IDE 进行访问。 有关详细信息,请参阅部署应用程序、服务和组件。

管理源代码并与他人协作

可以在任意提供商(包括 GitHub)托管的 Git 存储库中管理源代码。 或者,使用 Azure DevOps Services 管理整个项目的代码、Bug 和工作项。 若要详细了解如何在 Visual Studio 中使用团队资源管理器管理 Git 存储库,请参阅开始使用 Git 和 Azure Repos。 Visual Studio 还内置有其他源代码管理功能。 要了解详细信息,请参阅 Visual Studio 中的新 Git 功能(博文)。

Azure DevOps Services 是基于云的服务,用于规划、托管、自动化和部署软件以及在团队中实现协作。 Azure DevOps Services 支持 Git 存储库(分布式版本控制)和 Team Foundation 版本控制(集中式版本控制)。 它们支持用于持续生成和发布 (CI/CD) 版本控制系统中存储的代码的管道。 Azure DevOps Services 还支持 Scrum、CMMI 和敏捷开发方法。

Team Foundation Server (TFS) 是 Visual Studio 的应用程序生命周期管理中心。 它使用单个解决方案,使开发过程中涉及的所有人均可参与该开发过程。 TFS 对于管理异类团队和项目也非常有用。

如果网络中已经具有 Azure DevOps 组织或 Team Foundation Server,则可通过 Visual Studio 中的“团队资源管理器” 窗口连接。 可在此窗口中将代码签入(出)源控件、管理工作项、启动生成以及访问团队聊天室和工作区。 可以从搜索框,或者从“视图” > “团队资源管理器”或“团队” > “管理连接”的主菜单中打开“团队资源管理器”。

Visual Studio常用快捷键

查找和替换

  1. 查找:使用组合键“Ctrl+F”;
  2. 替换:使用组合键“Ctrl+H”。 (批量更改函数名的神器!)

**复制/剪切/删除整行代码 **

  1. 如果你想复制一整行代码,只需将光标移至该行,再使用组合键“Ctrl+C”来完成复制操作,而无需选择整行。
  2. 如果你想剪切一整行代码,只需将光标移至该行,再使用组合键“Ctrl+X”来完成剪切操作,而无需选择整行。
  3. 如果你想删除一整行代码,只需将光标移至该行,再使用组合键“Ctrl+L”来完成剪切操作,而无需选择整行。

撤销/反撤销

  1. 撤销:使用组合键“Ctrl+Z”进行撤销操作;
  2. 反撤销:使用组合键“Ctrl+Y”进行反撤销操作。

向前/向后搜索

  1. 使用组合键“Ctrl+I”;
  2. 键入待搜索文本(将光标移至搜索词输入框位置即可开始输入);
  3. 键入搜索文本后,可以使用组合键“Ctrl+I”及“Ctrl+Shift+I”前后定位搜索结果,搜索结果会被高亮显示。
  4. 要结束搜索,可以按“ESC”键或者点击查找框右侧的关闭按钮。

[补充]选择一个单词后,按组合键“Ctrl+F”也可调出查找框口,且搜索结果也会被高亮显示。

框式选择
使用组合键“Shift+方向键(或鼠标)”即可完成框式选择。框式选择允许你同时对代码行和列进行选择。这对批量删除某些代码很方便的哦。

在光标所在行的上面或下面插入一行

  1. 组合键“Ctrl+Enter”:在当前行的上面插入一个空行;
  2. 组合键“Ctrl+Shift+Enter”:在当前行的下面插入一个空行。

定位到行首与行尾

  1. home键:定位到当前行的行首;
  2. end键:定位到当前行的行尾。

选中从光标起到行首(尾)间的代码

  1. 选中从光标起到行首间的代码:使用组合键“Shift + Home”;
  2. 选中从光标起到行尾间的代码:使用组合键“Shift + End”。

调用智能提示

  1. 方法1:使用组合键“Ctrl+J”;
  2. 方法2:使用组合键“Alt+→”。

代码对齐

Ctrl + K + D = 正确对齐所有代码 (美颜神器)

快速切换窗口

使用组合键“Ctrl+Tab”(此时可以打开IDE 的导航,获得鸟瞰视图)。

快速隐藏或显示当前代码段

使用组合键“Ctrl+M,M”(记住:要按两次M 哦)。

生成解决方案

使用组合键“Ctrl+Shift+B”。

全屏显示/退出全屏显示

使用组合键“ SHIFT + ALT + ENTER ”。

定义与引用

  1. 转跳到定义:F12;
  2. 查找所有引用:使用组合键“Shift+F12”。

回到上一个光标位置/前进到下一个光标位置

  1. 回到上一个光标位置:使用组合键“Ctrl + -”;
  2. 前进到下一个光标位置:“Ctrl + Shift + - ”。

大小写转换

  1. 转小写:使用组合键“Ctrl+ U”;
  2. 转大写:使用组合键“CTRL + SHIFT + U”。

调试相关

  1. 调试(启动):F5;
  2. 调试(重新启动):使用组合键“Ctrl+Shift+F5”;
  3. 调试(开始执行不调试):使用组合键“Ctrl+F5”;
  4. 调试(逐语句):F11;
  5. 调试(逐过程):F10;
  6. 设置断点:F9。

注释/取消注释

  1. 注释用组合键“Ctrl+K+C”。
  2. 取消注释用组合键“Ctrl+K+U”。
扩展名“属性”描述
.sln它通过为环境提供对项目、项目项和解决方案项在磁盘上位置的引用,可将它们组织到解决方案中。包含了较为通用的信息,包括解决方案所包含项目的列表,解决方案内任何项的位置以及解决方案的生成配置。比如是生成Debug模式,还是Release模式,是通用CPU还是专用的等。此文件存储在父项目目录中,他是一个或多个.proj(项目)的集合。
.suo解决方案用户选项 存储用户级别设置和自定义项,如断点。

解决方案由格式唯一的文本文件(扩展名 .sln)描述;不应对其进行手动编辑。 相反,.suo 文件是隐藏文件,在默认的文件资源管理器设置下不会显示。 若要显示隐藏文件,请在文件资源管理器的“查看”菜单上选中“隐藏项”复选框。

工程建立一些说明

内存变量不要拷来拷去,内存不是无限大的,耗时也不是不关心的。<

关于如何写.h 和.cpp,如何 include 等结构问题

  1. 项目——添加类,会自动生成与类同名的.h 和.cpp 文件
  2. 然后在.h 里写类声明——写成员变量和函数声明
  3. 在.cpp 里写类成员函数声明
  4. 如果abc.h文件中用到了某库中的东西,比如 vector,则应该在.h开头#include <vector>,而在.cpp 中只#include"abc.h”
  5. 在.cpp 中写 using namespace std,因为如果在.h中用的话,别人 include 这个h是很容易出现命名问题的。
  6. 枚举类声明写到.h中。类要用到的结构体类型,在类声明之前写。

C++介绍

C++大牛博客

C++基础入门(一)
C++核心编程(二)
C++提高编程(三)
下面简单介绍一下 关于上面大牛没怎么提到的东西。

C++开发工具

在这里插入图片描述

C++的编译与执行

在这里插入图片描述

声明与使用变量

在这里插入图片描述

在这里插入图片描述

了解命名空间与using的使用

命名空间是ANSI C++引入的可以由用户命名的作用域,用来处理程序中常见的命名冲突
所谓命名空间,实际上就是一个程序设计者命名的内存空间,设计者可以根据需要指定一些有名字的空间域, 把一些全局实体分别放在各个命名空间中,从而与其他全局实体分隔开来。
一般的使用规则:命名空间名::命名空间成员名
在这里插入图片描述

指针、内存分配及栈内存和队内存

指针:是一个值为内存地址的变量。(数据结构)
在这里插入图片描述
数据类型 指针变量名*
在这里插入图片描述
使用指针的步骤:

  1. 声明指针
  2. 为指针赋值-必须使用&符号取其他变量的地址(数组除外)
  3. 使用指针所指向的值使用间接运算符*
    在这里插入图片描述

命名规范

华为编程思维
华为C++编程规范

在这里插入图片描述

接口

在这里插入图片描述

  • 4
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Matthew

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值