一、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 快捷键运行程序

更换主题:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/582038.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis 核心知识总结

Redis 核心知识总结 认识 Redis 什么是 Redis? Redis 是一个由 C 语言开发并且基于内存的键值型数据库,对数据的读写操作都是在内存中完成,因此读写速度非常快,常用于缓存,消息队列、分布式锁等场景。 有以下几个特…

2022 年全国职业院校技能大赛高职组云计算正式赛卷第二场-容器云

2022 年全国职业院校技能大赛高职组云计算赛项试卷 云计算赛项第二场-容器云 目录 2022 年全国职业院校技能大赛高职组云计算赛项试卷 【赛程名称】云计算赛项第二场-容器云 【任务 1】容器云平台搭建[5 分] 【任务 2】容器云应用部署: Docker Compose 编排部署[7.0…

WPF+Halcon 培训项目实战(6):目标匹配助手

前言 为了更好地去学习WPFHalcon,我决定去报个班学一下。原因无非是想换个工作。相关的教学视频来源于下方的Up主的提供的教程。这里只做笔记分享,想要源码或者教学视频可以和他联系一下。 相关链接 微软系列技术教程 WPF 年度公益课程 Halcon开发 CSD…

springcloud之通过openfeign优化服务调用方式

写在前面 源码 。 在前面的文章中我们实际上已经完成了优惠券模块微服务化的改造,但是其中还是有比较多可以优化和增强的地方,本文就先来对服务间的通信方式进行优化,具体就是使用openfeign来替换调原来的webclient。下面我们就开始吧&#…

【Redis】八、哨兵模式

文章目录 一、概述这里的哨兵有两个作用多个哨兵 二、哨兵测试1、配置哨兵配置文件 sentinel.conf2、启动哨兵3、断开Master节点 三、哨兵模式优点:缺点: 哨兵模式的全部配置 参考:狂神说Java bilibili哨兵模式 一、概述 自动选取老大的模式…

在 Android 手机上从SD 卡恢复数据的 6 个有效应用程序

如果您有 Android 设备,您可能会将个人和专业的重要文件保存在设备的 SD 卡上。这些文件包括照片、视频、文档和各种其他类型的文件。您绝对不想丢失这些文件,但当您的 SD 卡损坏时,数据丢失是不可避免的。 幸运的是,您不需要这样…

Appium+python自动化(一)- 环境搭建—上(超详解)

简介 今天是高考各地由于降水,特别糟糕,各位考生高考加油,全国人民端午节快乐。最近整理了一下自动化的东西,先前整理的python接口自动化已经接近尾声。即将要开启新的征程和篇章(Appium&python)。那么…

代码随想录算法训练营第三十天|332.重新安排行程、51. N皇后 、37. 解数独

332.重新安排行程 题目链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 文档讲解&#xff1a;代码随想录 C代码&#xff1a; class Solution { public: unordered_map<string, map<string, int>> targets;bool backtrack…

一套基于springboot、mybaits、avue技术开发的医院绩效考核系统源码,可适应医院多种绩效核算方式

医院绩效定义&#xff1a; “医院工作量绩效方案”是一套以工作量&#xff08;RBRVS&#xff0c;相对价值比率&#xff09;为核算基础&#xff0c;以工作岗位、技术含量、风险程度、服务数量等业绩为主要依据&#xff0c;以工作效率和效益、工作质量、患者满意度等指标为综合考…

边缘计算网关:在智慧储能系统中做好储能通信管家

背景 目前储能系统主要由储能单元和监控与调度管理单元组成&#xff0c;储能单元包含储能电池组(BA)、电池管理系统(BMS)、储能变流器(PCS)等&#xff1b;监控与调度管理单元包括中央控制系统(MGCC)、能量管理系统(EMS)等。 2021年8月&#xff0c;国家发改委发布《电化学储能…

解析正交镜像滤波器组

正交镜像滤波器组&#xff08;Orthogonal Mirror Filter Banks&#xff09;是一种在信号处理领域中常用的滤波器组结构&#xff0c;它在信号分析、多尺度表示和图像压缩等领域发挥着重要作用。本文将着重介绍正交镜像滤波器组的原理、特点以及在信号处理和图像压缩中的应用。 …

2023年中职“网络安全”——B-5:网络安全事件响应(Server2216)

B-5&#xff1a;网络安全事件响应 任务环境说明&#xff1a; 服务器场景&#xff1a;Server2216&#xff08;开放链接&#xff09; 用户名:root密码&#xff1a;123456 1、黑客通过网络攻入本地服务器&#xff0c;通过特殊手段在系统中建立了多个异常进程&#xff0c;找出启…

javaEE -19(9000 字 JavaScript入门 - 4)

一&#xff1a; jQuery jQuery是一个快速、小巧且功能丰富的JavaScript库。它旨在简化HTML文档遍历、事件处理、动画效果以及与后端服务器的交互等操作。通过使用jQuery&#xff0c;开发者可以以更简洁、更高效的方式来编写JavaScript代码。 jQuery提供了许多易于使用的方法和…

使用Python Flask搭建一个简单的Web站点并发布到公网上访问

文章目录 前言1. 安装部署Flask并制作SayHello问答界面2. 安装Cpolar内网穿透3. 配置Flask的问答界面公网访问地址4. 公网远程访问Flask的问答界面 前言 Flask是一个Python编写的Web微框架&#xff0c;让我们可以使用Python语言快速实现一个网站或Web服务&#xff0c;本期教程…

Leetcode 56 合并区间

题意理解&#xff1a; 以数组 intervals 表示若干个区间的集合&#xff0c;其中单个区间为 intervals[i] [starti, endi] 。 合并所有重叠的区间&#xff0c;并返回 一个不重叠的区间数组。 该数组需恰好覆盖输入中的所有区间 。 目标&#xff1a;合并…

k8s集群etcd备份与恢复

一、前言 k8s集群使用etcd集群存储数据&#xff0c;如果etcd集群崩溃了&#xff0c;k8s集群的数据就会全部丢失&#xff0c;所以需要日常进行etcd集群数据的备份&#xff0c;预防etcd集群崩溃后可以使用数据备份进行恢复&#xff0c;也可用于重建k8s集群进行数据恢复 二、备份…

gin框架使用系列之六——自定义中间件

系列目录 《gin框架使用系列之一——快速启动和url分组》《gin框架使用系列之二——uri占位符和占位符变量的获取》《gin框架使用系列之三——获取表单数据》《gin框架使用系列之四——json和protobuf的渲染》《gin框架使用系列之五——表单校验》 一、gin中间件概述 gin中将…

2024年中职“网络安全“—数字调查取证(attack817.pcapng)

目录 ​1.通过分析数据包找出恶意用户最初访问HTTP服务的包号&#xff0c;将该值作为Flag值提交, Flag格式为flag{xxx}&#xff1b; 2.继续查看数据包文件分析出恶意用户扫描了哪些端口&#xff0c;将全部的端口号按照一定顺序作为Flag值&#xff0c;提示&#xff1a;注意端口…

编译原理手写版笔记

编译原理手写版笔记 来自smile 一个学期主要学习了词法分析、文法分析、语法分析、语义分析。 按照教学脉络&#xff0c;整理了一份期末笔记。用于复习整个学期的知识点 并且把所有的数据结构以及算法 整理出来。可以用于考试手写完成题目。 当然拿高分需要多练习&#xff0…

理解 Go Mod Init

初始化Go模块和管理依赖的全面指南 go mod init 是Go编程语言&#xff08;通常称为Golang&#xff09;中用于初始化新Go模块的命令。在Go中&#xff0c;一个模块是一组相关的Go包&#xff0c;它们作为一个单元一起进行版本控制。通常&#xff0c;在项目目录的根目录下使用 go m…