学习C++
文章平均质量分 96
C++ Without Fear(第3版)学习笔记
ALZ-one
这个作者很懒,什么都没留下…
展开
-
第13章 用STL简化编程
C++最酷的地方之一就是标准模板库(Standard Template Library,STL)。大多数编译器都支持。模板是可用来创建高级容器的泛化数据类型。例如,可用 list 模板创建整数、浮点数甚至自定义类型的链表。虽然听起来很新奇,但不用担心。STL 是解决许多常见编程问题的有效手段。其出发点很简单。和函数、类和对象一样,既然一个编程问题已经解决,为什么要重新解决一遍?目前,大多数C++编译器都提供了对STL的完整支持。C++14(甚至C++11)编译器肯定都是支持的。13.1 列表模板ST原创 2021-03-15 23:41:06 · 419 阅读 · 0 评论 -
第12章 两个完整的OOP例子
文章目录12.1 动态对象创建12.2 new 和 delete 的其他用法12.3 二叉树应用Bnode 类Btree 类例12.1 :按字母顺序排序练习12.4 汉诺塔问题:动画版涉及栈类使用 Cstack类例12.2:动画汉诺塔练习小结前两章讲解了类和对象声明的基本语法。现在运用面向对象原则来做一些有趣和有用的事情。首先探讨二叉树,它在编程界很有名,既有趣,又烧脑。接着重拾第5章的汉诺塔例子,新版本用字符动画展示解题过程。但首先要进行一些铺垫。12.1 动态对象创建指针还有另一个用途:建立对原创 2021-03-10 00:22:57 · 356 阅读 · 0 评论 -
第11章:构造函数
文章目录11.1 构造函数入门多个构造函数(重载)C++/C++14:成员初始化C++ 14默认构造函数C++ 故意用默认构造函数来坑你吗?C++11/C++14:委托构造函数C++ 14例 11.1:Point 类的构造函数练习练习11.1.1练习11.1.2练习11.1.3例11.2:Fraction类的构造函数练习练习11.2.1练习11.2.211.2 引用变量和引用参数(&)11.3拷贝构造函数11.4 将字符串转换为分数的构造函数小结本书要强调的一个主旨在于,面向对象编程(OOP)是创原创 2021-02-27 11:01:53 · 892 阅读 · 2 评论 -
第10章 类和对象
C++最令人着迷的主题之一就是面向对象。理解它并用面向对象编程(Object-Oriented Programming,OOP)技术写了几个程序之后肯定会爱上它。不过,它背后的概念刚开始的时候还是比较模糊,有一定挑战性。总体上说,面向对象是完成分析和设计的一种方式。C++提供了一些有用的工具,但只有理解了OOP设计是什么之后才好用。接着6章将围绕这一主题展开,许多项目不采用面向对象的方式会很难。10.1 理解OOP面向对象编程(OOP)是一种模块化编程方式:对密切相关的代码和数据进行分组。主要规范如原创 2021-02-14 08:56:52 · 196 阅读 · 0 评论 -
第9章文件:电子存储
文章目录9.1 文件流对象入门引用磁盘文件例9.1 :向文件写入文本练习9.1.1练习9.1.29.1 文件流对象入门C++提供了“文件流”对象,支持和 cin/cout 相同的一套函数调用和操作符。数据就像水一样,从某个来源(如控制台)流出,向某个目标(如文件)流入。通过几个简单的步骤向文件写入。第一步是用 #include <fstream>指令开启对文件流操作的支持:# include <fstream>第二步是创建文件流对象并和磁盘文件关联。我选择 fout 这原创 2021-01-28 09:46:50 · 228 阅读 · 0 评论 -
第8章 字符串:分析文本
文章目录8.1 计算机如何存储文本计算机如何翻译程序?获取正确的字符串字符串处理函数例 8.1: 构造字符串练习练习 8.1.1练习 8.1.2计算机处理器只理解数字,它们如何与人沟通?答案是通过一种特殊的的编码为每个字母分配编号。这是理解文本字符串的基础,所以本章首先讨论该主题。C++多年来都支持一个高级的string类来简化文本字符串处理。例如,以下代码连接两个字符串,不必关心字符串长度或容量,就是这么神奇! string titled_name = "Sir" + beatle_name本章原创 2021-01-15 10:26:49 · 358 阅读 · 0 评论 -
第7章 指针
文章目录7.1 指针到底是什么?7.2 指针概念7.3 声明和使用指针例 7.1:打印地址例 7.2:double_it 函数练习练习 7.2.1练习 7.2.2指针就是存储了其他数据的位置的一个变量。这样想指针:对于装满了数据的柜子,更简单的做法是记录它的位置而不是复制全部内容。7.1 指针到底是什么?CPU不懂名称或字母,它用称为“地址”的数字引用内存位置。一般不需要直到具体数字,虽然想的话也可以打印出来。如下图索引,计算机可能将变量a, b 和 c分别存储在数字地址 0x220004, 0x22原创 2020-07-08 10:28:11 · 142 阅读 · 0 评论 -
第6章 接触数组
文章目录6.1 C++数组初探6.2 初始化数组6.3 基于零的索引数组 是由类似的数据项(称为“元素”)组成的数据结构,而且数据项的数量任意。6.1 C++数组初探如果要声明5个变量,我们可以这样:double scores1, scores2, scores3, scores4, scores5;这要打好多字,如果用数组,我们可以这样:double scores[5]; //声明double类型的5个数据项scores[0], scores[1], scores[2], scores[原创 2020-06-08 16:40:08 · 136 阅读 · 0 评论 -
第5章 被大量调用的函数
文章目录5.1 函数的概念5.2 函数的使用练习练习 5.1.1练习 5.1.25.1 函数的概念函数写好后可被调用任意多次。调用函数,相当于将程序执行权移交给函数定义代码。函数会运行至结束或遇到return语句。之后,执行权还给调用者。5.2 函数的使用建议用以下方式创建和调用用户自定义函数。在程序开头 声明 函数在程序某个地方 定义 函数。其他函数 调用 该函数步骤1:声明...原创 2020-05-03 15:38:10 · 409 阅读 · 0 评论 -
第4章 全能又好用的for语句
文章目录4.1 计数循环4.2 for循环入门4.3 大量例子例4.1:用for打印1到N练习 4.1.1练习4.1.2练习4.1.34.1 计数循环如下图所示,循环总共包含三个步骤:1.初始化循环计数器;2.测试循环条件;3.条件为真就执行语句并递增。除非条件为false,否则会一直从第2步重复。如果能用更简洁的语句表达这些步骤,写数到10的循环将非常容易。4.2 for循环入门...原创 2020-03-23 20:33:35 · 432 阅读 · 0 评论 -
第3章 判断语句进阶
文章目录3.1 do-while循环例3.1:加法机练习3.1.1练习3.1.23.2 随机数入门例3.2:猜数游戏优化练习3.2.1练习3.2.2练习3.2.3例3.2.43.3 switch-case语句例3.3:打印数字练习 3.3.1练习3.3.2练习3.3.3练习3.3.43.1 do-while循环事实上,单用while循环就可以写出很复杂的程序,但是也有一个很明显的缺点:无论结果...原创 2020-03-09 20:43:58 · 567 阅读 · 0 评论 -
第2章 判断语句
[@echo]2.1 准备功课: 数据类型整型不能容纳小数部分。double类型几乎万用,但在不需要浮点数的时候用double纯属浪费。double范围比整数大得多,还可以存储小数部分。但需要更多资源。double表示极大整数的精度有限,而且可能发生舍入误差。如果只是处理整数,用整型就可以了。整型的声明:int 变量名1;int 变量名1 = 初始值;变量也可以单独初始化...原创 2020-02-13 04:27:19 · 730 阅读 · 0 评论 -
第1章 开始使用C++
开始使用C++开始使用C++1.1 安装Miscrosoft Visual Studio 2015/20171.2 用Miscrosoft Visual Studio创建项目1.3 用Microsoft Visual Studio写程序1.4 用Visual Studio 运行程序1.5兼容性问题 #1:stdafx.h或pch.h1.6 兼容性问题#2:暂停屏幕1.7 如果不使用Visual S...原创 2020-02-04 19:32:36 · 273 阅读 · 0 评论