文章目录
- 1. C++简介
- 1.1 历史背景
- 1.2 特点
- 1.3 应用领域
- 2. 操作过程和代码
- 2.1 打开Visual Studio(默认你下载了C++的相关文件)
- 2.2 创建新项目
- 2.3 输入名字,创建
- 2.4 右击源文件->添加->新建项
- 2.5 命名好,进行添加
- 2.6 输入代码
- 2.7 输出结果
- 3. 总结
1. C++简介
c++语言在c语言的基础上添加了面向对象编程和泛型编程的支持。c++继承了c语言高高效,简洁,快速和可移植的传统。
C++ 是一种高级编程语言,它在C语言的基础上添加了面向对象编程(OOP)的特性,同时也支持过程化编程。以下是对C++语言的详细介绍:
1.1 历史背景
C++是由比雅尼·斯特劳斯特鲁普(Bjarne Stroustrup)在20世纪80年代初期在贝尔实验室开发的。最初,它被称为“C with Classes”,目的是为了增强C语言的功能,使其能够更好地支持大型软件项目的开发。随着时间的推移,C++不断发展和完善,加入了模板、异常处理、命名空间等诸多新特性。
1.2 特点
- 高效性
- C++ 代码经过编译后能够生成高效的机器码,这使得它在系统编程、游戏开发等对性能要求较高的领域表现出色。例如,操作系统内核的部分代码、高性能的游戏引擎底层实现等都可以用C++来完成。它能够直接访问计算机的硬件资源,像内存地址等,这种底层访问能力可以让程序员最大程度地优化程序性能。
- 可移植性
- C++ 程序可以在不同的操作系统(如Windows、Linux、macOS等)和硬件平台上进行编译和运行。只要有相应的编译器支持,相同的C++源代码在不同平台上经过适当的编译配置后,就可以正常工作。这是因为C++标准规定了语言的语法和语义,编译器会根据目标平台将代码转换为该平台能够理解的机器语言。
- 面向对象编程支持
- 类(class)和对象(object)是C++面向对象编程的核心。类是一种用户自定义的数据类型,它将数据(成员变量)和操作这些数据的函数(成员函数)封装在一起。例如,定义一个“汽车”类,其中可以包含汽车的属性(如颜色、速度等)和行为(如加速、刹车等)。对象则是类的实例,就像具体的某一辆汽车。
- 继承(inheritance)允许创建一个新类(派生类),它继承了另一个类(基类)的属性和行为,并且可以添加新的特性。比如,“跑车”类可以继承“汽车”类,并且添加自己特有的属性,如更高的最高速度等。
- 多态(polymorphism)使得不同的对象可以通过统一的接口进行调用,具体的行为根据对象的实际类型来确定。例如,定义一个“绘制图形”的函数,它可以根据传入的是“圆形”对象还是“矩形”对象,来调用相应的绘制方法。
- 丰富的标准库
- C++标准库提供了大量的功能,包括输入输出操作(iostream)、字符串处理(string)、容器(如vector、list、map等)、算法(如排序、查找等算法)等。这些标准库可以大大提高开发效率,减少程序员的工作量。例如,使用vector容器可以方便地存储和操作一组数据,像存储一个整数数组,并且可以轻松地进行插入、删除和遍历操作。
1.3 应用领域
- 系统软件
- 用于开发操作系统、设备驱动程序等。例如,Linux内核的部分模块就是用C++编写的。因为C++能够很好地控制硬件资源,并且可以高效地运行,所以在这些对性能和底层操作要求很高的系统软件领域有广泛的应用。
- 游戏开发
- 许多大型游戏的引擎都是用C++编写的。如Unreal Engine(虚幻引擎)和CryEngine等。这些引擎利用C++的高性能和面向对象编程的特点,能够实现复杂的游戏逻辑、图形渲染和物理模拟等功能。
- 软件开发工具
- 编译器、代码编辑器等开发工具的开发也会用到C++。例如,著名的GCC(GNU Compiler Collection)编译器的部分代码是C++语言实现的。因为C++可以高效地处理复杂的语法分析和代码生成任务。
- 数据库系统
- 一些数据库管理系统的核心模块也是用C++编写的。这是因为C++可以处理大量的数据操作,并且能够保证数据处理的高效性和稳定性。
2. 操作过程和代码
2.1 打开Visual Studio(默认你下载了C++的相关文件)
2.2 创建新项目
2.3 输入名字,创建
2.4 右击源文件->添加->新建项
2.5 命名好,进行添加
2.6 输入代码
#define _CRT_SECURE_NO_WARNINGS
#include<iostream> // 引用头文件
using namespace std;//标准命名空间int main() {// cout是标准的输出流对象,打印字符串,endl是刷新缓冲区,并换行cout << "Hello World!!!" << endl;system("pause");return EXIT_SUCCESS;
}
2.7 输出结果
Hello World!!!
请按任意键继续. . .C:\Users\YUEXU\source\repos\CTest++\x64\Debug\CTest++.exe (进程 21600)已退出,代码为 0 (0x0)。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
就完成了!!!
3. 总结
一直都想学C++,不过之前学习python和java,后面总是就没有后续。现在又重新学习了,很喜欢C++高效和贴近底层的特点。学过一段时间后,现在打算再次学习。机器学习和深度学习是人工智能的部分,我有个用C++来实现的打算,不知道后面有没有时间去搞搞,哈哈哈哈哈!!!!
语言一直都是工具,学习C++的目的是为了学习C++后面一些很有趣的课程,比如游戏服务器开发,Shell脚本等,蛮有意思的。正好也顺便做做笔记,供大家学习,借鉴。后续考虑出一下C语言的数据结构,不过那部分真不如用Java写来方便,要不也写一下算法吧。看我时间安排吧。