C++的修仙之旅 LV0 - 《Essential C++》

C++修仙 游戏讲述的是你是一个修士有一天你宗门被一群怪物围了,作为宗门的一名修士,你勇敢的站在了宗门的一线,目标:击败BOOS 阅读详情

C++的修仙之旅 - 《Essential C++》

  • 标题 : C++的修仙之旅 -《Essential C++》
  • 起源: 此博客根据知乎推荐入门C++学习的书本所做的学习笔记,为了突出C++学习目的以及节省学习时间,此博客跳过了《Essential C++》书中 大部分C 和 编程基础知识,做了精简的《Essential C++》的学习笔记-
  • 已更新次数 2
  • 最近一次更新时间:2021 6 3
  • 第一次更新时间: 2021 6 3 0:12
  • 最近更新内容:
  • 下次更新:

第一章C++ 的编程基础

1.1 C++程序语言组成

基础数据类型:
  • 布尔值(Boolean)
  • 字符(character)
  • 整数(integer)
  • 浮点数f floating point)
算术,关联,逻辑运算符
  • 等号运算符( = =)
  • 小于等于( < =)
  • 运算符以及赋值(alignment, = ) 运算符
  • 累加(++)运算符
  • 条件运算符(?:)
  • 复合赋值( + =) 运算 符
循环、控制、条件分支及语句
  • 例 如 i f 语句以及while循环,可用来改变程序的控制流程
复合型类别:
  • 指针 数组
  • 指针:间接参考一个已经存在的对象
  • 数组:则用于定义一组具有相同数据类型变量
标准的,通用的,抽象化程序库
  • 字符串
  • 向量( vector)

如何撰写 C++ 程序

关键词

关键词 乃是程序语言先行定义一些具有特殊意义的名称
如 int 用来表示语言内建整数型数据型

函数

函数是一块独立的程序序列,能够执行一些运算,他包含4 个部分

  • 返回值 的类别(return type)
  • 函数名称 (parameter list)
  • 参数表 (parameter list)
  • 函数主体 (function boby)
类

类 是用户自定义的数据类型(ser-defined data type)
class 的机制 让我们得以把数据型别加入我们的程序中,并有能力识别他
面对对象- 类体系(class hierarchy) 定义一个整个家族体系的各相关类型
列如 : 终端机 与 文件输入装置
终端机 与 文件输出装置

C++ 基础数据型别

  • 布尔值 (Boolean)
  • 字符 (charmter)
  • 整数 (integer)
  • 浮点数 ( loating point)

Class 机制

Class 机制 赋予了 ”增加 程序内之型别抽象化的能力“
像摄像机 我们可以定义一个 point3d class, 用来表示 空间位置和 视角方向
我们同样 使用七个浮点 数值表示照相机的特性 ,不同的是 ,我们不再直接面对7个浮点数,而是面对Carmera Class 操作

Class 定义

CLASS 定义 分为两部分

  • (operations)头文件 用来声明 class 所提供的各种操作行为
  • (implemenution)程序代码文件 用来包含这行为 操作内容

Class 使用

  • 表头文件可以让程序知道 class定义
  • C++ 是标准的输入输出库 名称为 iostream 包含了整套的class
  • 至此 - 我们把定义好的 cout(读作 see out)对象写到终端机上
  • output 运算符 << 可以将数据导出 像这样 cout << “Please enter your first name”
  • 语句 是 C++ 程序的最小独立单元 以分号结束

using namespace std

  • using 和 namespace 都是C++ 关键词 ,std 是标准程序库所驻之命名空间 namespace 名称 ,标准程序库 所提供的任何事物 ,诸如(string class 以及 cout cin 中两个 iostream 类对象)都会被封装在命名空间std内
  • 命名空间 : 一种将程序库名称封装起来的方法 通过这种方法
  • 可以避免应用程序发生命名 冲突
    • (命名冲突 :应用程序中有两个不同的实体具有相同名称,导致程序无法区分彼此)
  • 命名冲突是发生时,程序必须等到命名冲突获得决议(resloved)之后,才得以继续进行
  • 命名空间是众多名称的可见范围内之间竖起的一道围墙

引入文件 :

若要在程序中使用string class 以及 cin cout 这两个 iostream 类对象
↑ 必须在含入 以及 头文件

  • 还得让命名空间 sd 曝光 所谓:using directive
    using namespace std 便是让命名空间中名称曝光的最简单方式

1.2 对象的定义与初始化 (Page:7)

数据赋型

为了定义对象 并赋予数据型别 ,对象名称可以是任何字母 数字 下划线

  • 大小写 字母是有区分的
  • 对象名称 不能以 数字为首
  • 命名不能与程序语言 本身的雷同 :( delete 是语言的关键词,不能用于程序内命名)

每个对象 都隶属于某个特定的数据类别(对象名称设计得好,我们直接可 直接联想对象属性 )
数据型别决定了对象能含有的数值范围 同时也决定了对象应占多数内存空间

对象初始化
  • 对象初始化有两种方法:
    • 其中一种是 :以关键词指定类型 ,存储一个类型对象
    • 另一种被称为 “ 构造函数语法 ”
  • 以assignment运 算 符
Essential+C++中文版.pdf Essential+C++中文版.pdf Essential+C++中文版.pdf Essential+C++中文版.pdf 立即下载

相关推荐

Essential C++中文版.pdf

本书以四个面向来表现C++的本质:procedural(面向过程的)、generic(泛型的)、obj-based(基于对象的)、object-oriented(面向对象的)。

静态随机存储器(SRAM)

静态随机存储器(SRAM)是一种广泛用于计算机系统和嵌入式设备中的高速随机访问存储器。与动态随机存储器(DRAM)不同,SRAM 不需要定期刷新,因此可以实现更快的访问时间和更低的功耗。SRAM通常用于缓存、高速缓冲器和存储器应用程序中,其中性能和可靠性至关重要。

JAZJD的博客 8148

判断两个多边形是否相交(java实现)

判断两个多边形是否相交 ,当前认为一个点相交也是相交,可针对凹多边形和凸边型等多复杂的多边形进行相交判断,采用java实现,因为网上java实现的比较少,所以这里写下如何实现,适用于碰撞检测,地图等等应用场景

IT_CREATE的博客 5843

SDM量化噪声等效到PLL输出的传递函数推导

在历年文章或书本中少见SDM量化噪声等效到PLL输出的传递函数推导。需了解SDM量化噪声的本质,配合欧拉方程简化,并将Z域转化成S域。最终结合断环处等效到PLL输出的传递函数,方可完成。

u010486560的博客 1405

手持式激光测距仪全套方案

激光测距全套方案,包括原理图、源代码、PCB、BOM、光学部分资料,结构、特殊元件数据手册及供应商联系方式,提供调试技术文档。全套方案已成功打板验证,实现0.05~50m测量范围,精度在+/—1.5mm,激光波长635~650nm,功率《1mW。方案预留了TTL串口、RS485接口,可通过串口助手看到测量数据,可自行DIY或者商业开发。无论是电路小白,还是技术大拿,都能通过方案资料成功做出一套激光测距仪。

Laser01的博客 2055

similarity network fusion for aggregating data types on a genomic scale

基因组规模上的聚合数据类型的相似性网络融合 摘要:         近期的技术已经使收集不同类型的全基因组数据十分划算,结合这些数据去创建一个给定的疾病或生物过程的一个全面视图的计算方法是有必要的。相似网络融合(SNF:similarity network fusion)通过创建每一个可利用的数据类型的样本(如,患者)的网络可以解决这个问题。例如,创建一个给定一群患者疾病的全面视图,SNF计算

augustar学习笔记 7868

广义正态分布优化算法(GNDO)详解:从理论到实践

广义正态分布优化算法(GNDO)是一种基于正态分布理论的新型元启发式优化算法。该算法通过局部开发和全局探索两种策略平衡搜索过程:局部开发利用广义平均位置和标准差进行精细搜索,而全局探索通过随机个体信息共享扩大搜索范围。GNDO具有参数少、结构简单、收敛速度快等优点,在光伏模型参数提取等工程优化问题中表现优异。算法将种群位置更新与正态分布参数调整相联系,通过自适应机制平衡探索与开发,数学分析表明其具有全局收敛性。相比传统优化算法,GNDO在探索能力和开发能力上均有优势,是高维复杂优化问题的有效解决方案。

qq_42212808的博客 136

信号处理仿真:自适应信号处理_(8).自适应信道均衡

在无线通信系统中,信道的多径效应和时变特性会导致信号的失真,从而影响通信质量。自适应信道均衡技术通过实时调整均衡器的参数,以补偿信道失真,提高信号的质量和可靠性。本节将详细介绍自适应信道均衡的原理、算法和实现方法,并通过具体的仿真例子来说明其应用。

2401_87715305的博客 1039

基于YOLOv12的牙齿识别与计数系统:从理论到完整实现

本文详细介绍了一种基于YOLOv12深度学习模型的牙齿识别与计数系统。该系统能够在口腔X光片中准确识别和计数牙齿,并提供了用户友好的UI界面。文章涵盖了数据预处理、模型训练、性能优化以及完整系统实现的各个环节,并提供了可复现的代码和数据集参考。整个系统包含三个主要模块:数据预处理模块YOLOv12模型训练模块UI界面展示模块。

YOLO 178

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: 通用机器人集群方案解读
下一篇: 腾讯 Robotics X 轮腿式机器人
「已注销」
博客等级 码龄6年 1223粉丝 98原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

「已注销」

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值