一、C++简介

C++语言的发展史
1983年,贝尔实验室(Bell Labs)的Bjarne Stroustrup发明了C++。 C++在C语言的基础上进行了扩充和完善,是一种面向对象程序设计(OOP)语言。

Stroustrup说:"这个名字象征着源自于C语言变化的自然演进"。还处于发展完善阶段时被称为"new C",之后被称为"C with Class"。C++被视为C语言的上层结构,1983年Rick Mascitti建议使用C++这个名字,就是源于C语言中的"++"操作符(变量自增)。而且在共同的命名约定中,使用"+"以表示增强的程序。

常用于系统开发,引擎开发、嵌入式开发等应用领域, 至今仍然是最受广大程序员喜爱的编程语言之一。

  1. C++特点
  • 在支持C语言的基础上,前面支持面向对象编程。
  • 编程领域广泛,功能强大(最难的编程语言之一)。
  • C++语言的标准一直保持着更新,本次课程主要以ISO C++98与C++ 11标准为主。
  • 为数不多的支持底层的操作的面向对象编程语言。
  • 在面向对象的语言当中执行效率极高。

面向对象编程的重要知识点

  • 对象
  • 封装
  • 继承
  • 多态

封装->继承->多态,也被称为面向对象编程的三大特性。

  1. 面向过程与面向对象的区别

【思考】如果把大象装进冰箱,应该怎么做?

  1. (我)打开冰箱
  2. (我)把大象放进去
  3. (我)把冰箱关上

上面这种思想就是典型的面向过程的思想,这种思想关注的重点是"过程","过程"指的是一系列有序的步骤,只要按照这个步骤来做,就可以得到想要的结果。这种思维方式偏向于计算机执行命令的本质,通常程序位一些有序的命令,这样的程序特点是执行效率高(因为都是亲历亲为)。适合小体量的软件项目编程,偏向性能的项目一般这样做。

使用面向对象的思想把大象装进冰箱:

1、(我)把大象和冰箱拟人化。

2、(我)给大象和冰箱安排任务。

  1. 大象和冰箱执行任务

面向对象的语言,关注的重点是"对象"。在计算机当中,"对象"可以理解为一系列由于某种联系而聚焦在一起的数据,在编程的过程当中,处理对象之间的关系,这种思考方式更近于人类的思考方式。这种的程序缺点是执行效率低,但是编程效率高,适合大规模的软件项目。

开发环境

单论C++的开发环境,没有严格的要求。为了学习的方便,直接使用下一门课程的环境进行开发。Qt Creator

软件安装比较简单,只需要在一个不包含中文路径下,一直点击"下一步"即可。

安装完成后,为 了使其支持中文输出,更改下面的编码。

设置完成后,重启Qt Creator,就可以新建C++项目了

  1. 点击
  2. 再点击的窗口中,按照下图所示进行操作

3、在弹出的窗口中,先输入项目名称,在设定项目路径,最后点击"下一步"。不能包含中文字符

  1. 在弹出的窗口中,直接点击"下一步"
  1. 在项目管理界面,直接点击"完成"

点击来运行。

  1. 可以看到新项目中包含的文件

.pro文件为项目配置文件,通常不需要手动修改,只有在项目中完全开启C++11功能时,增加下面这条语句即可。

复制代码
QMAKE_CXXFLAGS += -std=c++11`
`

添加完成之后,别忘记保存。保存ctrl+s

补充几个快捷键的使用:

  1. Alt+0 显示/隐藏边栏(有些电脑可能时win+0)
  2. ctrl+A 全选,再ctrl+i 对齐。代码排版
  3. ctrl+F 搜索+替换
  4. ctrl+R 快捷键运行程序

更换主题:

相关推荐
海上彼尚4 分钟前
Go之路 - 4.go的集合[完整版]
开发语言·后端·golang
coding随想11 分钟前
JavaScript Notifications API:告别alert弹窗,开启沉浸式用户体验革命!
开发语言·javascript·ux
阿海57411 分钟前
卸载php的shell脚本
开发语言·php
Ivy_belief14 分钟前
C++新特性汇总:涵盖C++11到C++23
java·c++·c++11·c++23
码界奇点19 分钟前
基于Python与GitHub Actions的正方教务成绩自动推送系统设计与实现
开发语言·python·车载系统·自动化·毕业设计·github·源代码管理
koddnty23 分钟前
在c++中使用HOOK修改sleep函数
linux·c++
kaikaile199531 分钟前
MATLAB计算卫星星下点轨迹
开发语言·算法·matlab
誰能久伴不乏1 小时前
深入理解 `poll` 函数:详细解析与实际应用
linux·服务器·c语言·c++·unix
二狗哈1 小时前
Cesium快速入门15:图元Primitive创建图像物体
开发语言·javascript·3d·webgl·cesium·地图可视化
lljss20201 小时前
C# 定时器类实现1s定时器更新UI
开发语言·c#