C++学习Day0:c++简介

news2025/5/26 2:11:42

目录

  • 一、.C++语言的发展史
  • 二、C++特点
  • 三、面向对象的重要术语
  • 四、面向过程和面向对象的区别?
  • 五、开发环境:
  • 六、创建文件步骤:
    • 1.点击新建项目
    • 2.在弹出的开始栏中按如下操作
    • 3.在.pro文件中添加(重要!!!)
    • 4.保存一下:ctrl+s
    • 5.运行:
    • 快捷键:
  • 七、个性化


一、.C++语言的发展史

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

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

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

二、C++特点

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

三、面向对象的重要术语

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

三大特征: 封装–>继承—>多态

四、面向过程和面向对象的区别?

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

  1. (我)打开冰箱
  2. (我)把大象放进去
  3. (我)把冰箱关上
    在这里插入图片描述

上面就是一种典型的面向过程的编程思想,这种思想关注重点是“算法”。“算法”指的是一系列有序的步骤,只要按照这个步骤来做,就可以得到预计的结果。这种思维偏向于计算机执行命令的本质,通常程序为一系列有序的语句。这样的程序特点是执行效率高(因为亲力亲为),但是编程效率低。适合小体量的软件项目、涉及硬件的项目与偏向于性能的项目。

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

  1. (我)把大象和冰箱拟人化
  2. (我)给大象和冰箱安排任务
  3. 大象和冰箱执行执行任务

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

五、开发环境:

下载,安装,不要有中文路径

链接: https://pan.baidu.com/s/1ad4c3hy5If6Z9ArivCt12Q?pwd=sc77 提取码: sc77

组件:全选

打开方式:
在这里插入图片描述
安装完成之后,改一下编码格式(c++本身不支持中文)支持中文输出
在这里插入图片描述
在这里插入图片描述
改完之后重启Qt creator

六、创建文件步骤:

1.点击新建项目

在这里插入图片描述

2.在弹出的开始栏中按如下操作

在这里插入图片描述
在这里插入图片描述
后续操作直接下一步
在这里插入图片描述
在这里插入图片描述

3.在.pro文件中添加(重要!!!)

每次新建项目最好都添加上
QMAKE_CXXFLAGS += -std=c++11

在这里插入图片描述

4.保存一下:ctrl+s

在这里插入图片描述

5.运行:

在这里插入图片描述

快捷键:

  1. 运行:ctrl+R、
  2. ctrl+A全选,再ctrl+i 代码对齐
  3. ALT +0 打开关闭侧边栏
  4. ctrl+F 查找替换

七、个性化

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

从零开始构建 Ollama + MCP 服务器

Model Context Protocol(模型上下文协议)在过去几个月里已经霸占了大家的视野,出现了许多酷炫的集成示例。我坚信它会成为一种标准,因为它正在定义工具与代理或软件与 AI 模型之间如何集成的新方式。 我决定尝试将 Ollama 中的一…

MATLAB学习笔记(二) 控制工程会用到的

MATLAB中 控制工程会用到的 基础传递函数表达传递函数 零极点式 状态空间表达式 相互转化画响应图线根轨迹Nyquist图和bode图现控部分求约旦判能控能观极点配置和状态观测 基础 传递函数表达 % 拉普拉斯变换 syms t s a f exp(a*t) %e的a次方 l laplace(f) …

C++ 线程间通信开发从入门到精通实战

C 线程间通信开发从入门到精通实战 在现代软件开发中,多线程程序已成为提升应用性能、实现并行处理的重要手段。随着多核处理器的普及和复杂应用需求的增加,C作为一门高性能的编程语言,在多线程开发中扮演着不可或缺的角色。然而&#xff0c…

Redis原理与Windows环境部署实战指南:助力测试工程师优化Celery调试

引言 在分布式系统测试中,Celery作为异步任务队列常被用于模拟高并发场景。而Redis作为其核心消息代理,其性能和稳定性直接影响测试结果。本文将深入解析Redis的核心原理,主要讲解Windows环境部署redis,为测试工程师提供一套完整…

Go语言入门到入土——一、安装和Hello World

Go语言入门到精通——安装和Hello World 文章目录 Go语言入门到精通——安装和Hello World下载并安装让Go跑起来为你的代码启动依赖跟踪调用外部包总结 下载并安装 下载地址:https://go.dev/dl/ 下载后傻瓜式安装 查看是否安装完成 go version让Go跑起来 创建一个…

opencv函数展示

一、图像基础 I/O 与显示 1.cv2.imread() 2.cv2.imshow() 3. cv2.waitKey() 4. cv2.imwrite() 5. cv2.selectROI() 6. cv2.VideoCapture() 二、颜色空间与转换 1. cv2.cvtColor() 2. cv2.split() 三、阈值处理 1. cv2.threshold() 2. 特殊阈值方法

【vue3】vue3+express实现图片/pdf等资源文件的下载

文件资源的下载,是我们业务开发中常见的需求。作为前端开发,学习下如何自己使用node的express框架来实现资源的下载操作。 实现效果 代码实现 前端 1.封装的请求后端下载接口的方法,需求配置aixos的请求参数里面的返回数据类型为blob // 下载 export…

如何在 Kali 上解决使用 evil-winrm 时 Ruby Reline 的 quoting_detection_proc 警告

在使用 Kali Linux 运行 Ruby 工具(例如 evil-winrm)时,你可能会遇到以下警告: Warning: Remote path completions is disabled due to ruby limitation: undefined method quoting_detection_proc for module Reline这个警告会导…

从零到一:网站设计新手如何快速上手?

从零到一:网站设计新手如何快速上手? 在当今数字化时代,网站已成为企业、个人展示信息、提供服务的重要窗口。对于想要涉足网站设计领域的新手而言,如何快速上手并掌握必要的技能成为首要任务。本文将从基础知识、软件工具、设计…

面向初学者的JMeter实战手册:从环境搭建到组件解析

🌟 ​大家好,我是摘星!​ 🌟 今天为大家带来的是面向初学者的JMeter实战手册:从环境搭建到组件解析,废话不多说,让我们直接开始~ 目录 1. JMeter简介 2. JMeter安装与配置 2.1. 安装 2.2.…

工资管理系统的主要功能有哪些

工资管理系统通过自动化薪资计算、税务处理、员工数据管理、报表生成等功能,极大地提升了薪资发放的效率和准确性。在传统的人工薪资管理中,HR人员需要手动计算每位员工的薪资,并确保符合税务要求,极易出错且耗时。而现代工资管理…

子函数嵌套的意义——以“颜色排序”为例(Python)

多一层缩进精减参数传递,参数少平铺书代码写更佳。 笔记模板由python脚本于2025-04-16 11:52:53创建,本篇笔记适合喜欢子函数嵌套结构代码形式的coder翻阅。 【学习的细节是欢悦的历程】 博客的核心价值:在于输出思考与经验,而不仅…

信息系统项目管理工程师备考计算类真题讲解四

一、三点估算(PERT) PERT(Program Evaluation and Review Technique):计划评估技术,又称三点估算技术。PERT估算是一种项目管理中用于估算项目工期或成本的方法,以下是其详细介绍: …

Golang|KVBitcask

文章目录 初识KVbitcask论文详解 初识KV bitcask论文详解 论文地址:https://riak.com/assets/bitcask-intro.pdf理想的存储引擎,应该满足下面一些特点:

基于骨骼识别的危险动作报警系统设计与实现

基于骨骼识别的危险动作报警系统设计与实现 基于骨骼识别的危险动作报警分析系统 【包含内容】 【一】项目提供完整源代码及详细注释 【二】系统设计思路与实现说明 【三】基于骨骼识别算法的实时危险行为预警方案 【技术栈】 ①:系统环境:Windows 10…

PDF转换格式失败?原因及解决方法全解析

在日常工作中,我们经常会遇到将PDF转换为Word、Excel、PPT等格式的需求。有时候以为一键转换就能搞掂,没想到却转换失败。到底问题出在哪?别急,我们可以看看是否以下几个问题引起的,找到解决问题的关键! 原…

模型提示词

一 提示词 (一) 提示词(Prompt)是用户发送给大语言模型的问题、指令或请求,** 1 来明确地告诉模型用户想要解决的问题或完成的任务,是大语言模型理解用户需求并据此生成相关、准确回答或内容的基础。对于…

Node.js 数据库 事务 项目示例

1、参考:JavaScript语言的事务管理_js 函数 事务性-CSDN博客 或者百度搜索:Nodejs控制事务, 2、实践 2.1、对于MySQL或MariaDB,你可以使用mysql或mysql2库,并结合Promise或async/await语法来控制事务。 使用 mysql2…

Qt开发:QFileInfo详解

文章目录 一、QFileInfo 简介二、常用的构造函数三、常用函数的介绍和使用四、常用静态函数的介绍和使用五、完整代码示例 一、QFileInfo 简介 QFileInfo 提供了一个对象化的方式,用于访问文件系统中单个文件的信息。它可以接受: 文件名字符串&#xff…

蓝桥杯常考排序

1.逆序 Collections.reverseOrder() 方法对列表进行逆序排序。通过 Collections.sort() 方法配合 Collections.reverseOrder(),可以轻松实现从大到小的排序。 import java.util.ArrayList; // 导入 ArrayList 类,用于创建动态数组 import java.util.C…