首页 > 编程语言 >大学C++程序设计课程开发指南——开发环境搭建

大学C++程序设计课程开发指南——开发环境搭建

时间:2024-09-20 22:45:58浏览次数:10  
标签:项目 解决方案 C++ 编译 Visual 开发 Studio 程序设计

前言

由于某些大学程序设计课程仍然在使用VC6.0这一上古工具,不太适合学生与现代开发生产接轨,并且也有可能出现兼容问题等,故编写此文,仅供参考

使用 Visual Studio

在介绍Visual Studio(此后简称VS)前,先给大家介绍这一工具的发展。

其前身正是VC6.0(全称Visual C++ 6.0,二十世纪末和二十一世纪初盛行),后期因为微软官方对各种工具进行了整合,因而更名为Visual Studio,作此文时,最新版本是Visual Studio 2022。尽管看起来两款工具发布仅间隔二十余年,但实际上这段时间内全世界计算机技术发展迅速,工具也不断进化。工欲善其事,必先利其器。因此笔者个人认为学会使用适应时代发展的工具是很有必要的。

安装 Visual Studio 2022

Visual Studio 2022分为三个版本,分别是Community(社区版),Professional(专业版),Enterprise(企业版)。其中社区版免费,其他付费。作为大学课程,社区版功能已经能完全满足日常学习乃至开发需求。因此本指南使用Visual Studio 2022 Community

准备Visual Studio Installer

进入以下网址选择社区版下载,会得到一个体积较小的安装程序,点击进入。
https://visualstudio.microsoft.com/

有的同学可能是英文界面,那么如果你希望你的VS是中文的,可以选择Installer上方的Language packs,选择Chinese (Simplified)即可。

选择所需开发环境包

我们需要的是C++开发环境,因此选择如下即可:

接下来直接点击安装,稍等片刻,我们将会得到Visual Studio 2022 Community

使用 Visual Studio

首先我们需要了解VS的一些基本概念。

解决方案(Solution)——我们将能够解决用户的一系列需求的项目或者文件成为解决方案。
项目(Project)——我们需要开发的单个程序项目。

比方说,我们需要开发一个命令行工具,那么为了实现这个目的,我们首先需要创建解决方案,然后在这个解决方案中创建项目(命令行本体程序以及其他拓展程序)。

也许大家不太能理解为什么不能直接创建项目,这里简单跟大家解释一下。在一个项目开发中,我们也许需要构建多个程序(此处程序并不是狭义上你能直接运行的,某些程序本身不能独立运行,但是可以被其他程序调用运行),那么如果用项目描述方案,我们发现多个项目将会不便于管理,因此微软提出了解决方案,使得我们能够把多个项目用一个解决方案表示。一定程度上能简化项目管理。具体内容以后可能会继续为大家介绍。

重点!!!
由此,我们可以知道,针对每个需求的开发,我们都必须要有解决方案,一个解决方案可以暂时没有项目,但是一个项目必须一个解决方案。

创建一个项目

进入Visual Studio 2022,我们点击创建新项目,在上方搜索框中选择控制台项目(C++),并单击下一步。

接下来会要求我们填写解决方案名称,项目名称,项目路径。这里根据自己需要填写即可。

单击确定,我们便得到一个新的项目(根据以上内容,我们在创建项目的时候,VS会为我们自动创建解决方案)。

编译运行

首先我们需要了解C++语言的性质。

C++是一门编译型语言。那么什么是编译型语言呢?

简单来说,编译的过程就是将人能看得懂的代码转化为机器看得懂的代码的过程。因此在运行前,我们需要将源代码编译成可执行文件。

按住Ctrl+B能够编译当前项目,按住Ctrl+Shift+B能够编译整个解决方案。由于我们目前接触的是单项目方案,因此二者等效。
如果大家希望通过鼠标点击,可以在工具栏处右键,选择生成。这样就会显示编译等工具按钮。

编译成功后,我们能够在下方输出窗口看到生成信息。当没有错误的时候,就意味着编译成功了。接下来我们可以运行程序查看结果。

运行有两种方式,一种是调试(按 F5),一种是非调试(按 Ctrl+F5)。二者都可以,具体有关调试技巧未来可能会介绍。

相信运行完,大家都得到了一个输出Hello World的程序。作为新手,这无疑是莫大的成就。
不过在运行完,大家一定记得关闭运行后的结果,也就是黑底窗口,否则第二次生成会出错。

标签:项目,解决方案,C++,编译,Visual,开发,Studio,程序设计
From: https://www.cnblogs.com/AquerKing/p/18423378

相关文章

  • Nodejs 与 Expressjs:了解差异及其在 Web 开发中的作用
    在现代Web开发中,JavaScript已经成为一种基石技术,不仅适用于前端开发,也适用于服务器端应用程序。Node.js和Express.js是对JavaScript在服务器端编程中的崛起做出重大贡献的两项关键技术。了解Node.js和Express.js之间的差异以及它们在Web开发中的作用对于任何旨在构建......
  • 如何选择是开发小程序还是开发APP?
    目录前言1.开发成本和周期2.用户体验3.推广方式4.功能实现5.技术实力6.业务需求综合考虑前言在选择是开发小程序还是开发APP时,需要综合考虑多个因素,包括开发成本、开发周期、用户体验、推广方式、功能实现、技术实力以及业务需求等。以下是对这些因......
  • C++学习笔记(27)
    十一、把字符串转换成整数有两个任务:1)为了支持把C风格的字符串转换成数字,C++提供了以下四个函数:intatoi(constchar*_String);//把C风格字符串转换为int整数。longatol(constchar*_String);//把C风格字符串转换为long整数。longlongatoll(constchar......
  • C++游戏
    宠粉福利!目录1.猜数字2.五子棋3.打怪4.跑酷5.打飞机6.扫雷1.猜数字#include<iostream>#include<cstdlib>#include<ctime>intmain(){std::srand(static_cast<unsignedint>(std::time(0)));//设置随机数种子inttarget=std::rand()%1000+......
  • JavaScript 中的五种作用域:开发人员深入探讨
    javascript对变量的行为是由它的作用域决定的。理解范围是编写健壮、可维护的代码的基础。本文将探讨javascript中的五种主要作用域类型——全局、局部、块、函数作用域(和闭包)和作用域链。最后,您将清楚地掌握javascript如何跨不同上下文处理变量。目录1.全球范......
  • 9月20c语言程序设计实验作业
    #include<stdio.h>#include<stdlib.h>//本程序用于统计优秀(A),及格(B),不及格(C)人数intmain(){   intA=0,B=0,C=0;   intn;//n是参与本次测试的学生人数   inthigh=0,low= 0;//划分线分数   printf("输入学生人数:\n");   scanf_s("%d......
  • 调试、开发板、串口、Vitis、源码。
    ###调试和编译步骤1.**准备工作**:  -在开始调试之前,请确保开发板已通电,并且正确连接了开发板上的串口(USB-232)。查看串口号可以通过设备管理器进行确认。2.**编译项目**:  -右击项目,在弹出的菜单中选择编译选项来编译工程。3.**启动调试**:  -右击“he......
  • 还在用越狱版的苹果手机群控,项目没被风控吗?免越狱版的群控早就开发出来了!
    还在为苹果手机群控软件的越狱问题烦恼吗?担心项目被风控,影响收益?免越狱版的群控软件已经悄然而至,让你的项目如虎添翼!传统的苹果群控软件需要越狱,这不仅增加了设备的风险,还可能导致项目被风控。而我们的免越狱版群控软件,无需对手机进行任何修改,即可实现多台手机的同时控制。......
  • C++ 多线程知识汇总
    https://zhuanlan.zhihu.com/p/194198073 (防链接失效)程序使用并发的原因有两种:为了关注点分离(程序中不同的功能,使用不同的线程去执行),当为了分离关注点而使用多线程时,设计线程的数量的依据,不再是依赖于CPU中的可用内核的数量,而是依据概念上的设计(依据功能的划分);为了提高性能......
  • C++学习
    C++学习第三课缺省函数、函数重载与引用C++学习第一课:C++学习须知C++学习第二课:命名空间域C++学习第三课:缺省函数与函数重载文章目录C++学习第三课缺省函数、函数重载与引用前言一、C语言的第二个不足:缺省参数(默认参数)的使用1.当函数有两个及以上形参时的传参规......