C++
文章平均质量分 89
小小池鱼儿
这个作者很懒,什么都没留下…
展开
-
C++ 学习笔记之(2)-变量、类型和限定符
C++ 学习笔记之(2)-变量、类型和限定符C++ 学习笔记之(2)-变量、类型和限定符注释数据类型无符号类型和带符号类型类型转换字面值常量整形和浮点型字面值字符和字符串字面值布尔字面值和指针字面值变量变量定义变量声明和定义的关系复合类型引用指针const 限定符const 引用指针和constconstexpr和常量表达式关于cons...原创 2018-04-17 17:59:36 · 311 阅读 · 0 评论 -
C++ 学习笔记之(19) new、delete表达式、RTTI(运行时类型识别)、枚举、类成员指针、嵌套类、局部类、位域、volatile、extern C
C++ 学习笔记之(19) new、delete表达式、RTTI(运行时类型识别)、枚举、类成员指针、嵌套类、局部类、位域、volatile、extern CC++ 学习笔记之(19) new、delete表达式、RTTI(运行时类型识别)、枚举、类成员指针、嵌套类、局部类、位域、volatile、extern C控制内存分配重载new和delete定位new表达式运行时类型识...原创 2018-05-11 15:31:30 · 288 阅读 · 0 评论 -
C++ 学习笔记之(14) - 重载运算与类型转换
C++ 学习笔记之(14) - 重载运算与类型转换在C++ 学习笔记之(4)-表达式、运算符与类型转换中记录了C++语言中定义的大量运算符和内置类型的自动转换规则,并且当运算符作用于类类型时,可以通过运算符重载重新定义该运算符的含义。同时,也能自定义类类型之间的转换规则,即和内置类型的转换一样,类类型转换隐式的将一种类型的无锡爱那个转换成另一种类型对象基本概念重载运算符函数的名字...原创 2018-05-05 11:59:37 · 184 阅读 · 0 评论 -
C++ 学习笔记之(15)-面向对象程序设计
C++ 学习笔记之(15)-面向对象程序设计OOP:概述面向对象程序设计基于三个基本概念:数据抽象、继承和动态绑定。数据抽象:将类的接口与实现分离,详情可在C++ 学习笔记之(7)-类查阅继承:可以定义相似的类型并对其相似关系建模, 继承构建一种层次关系,层次根部为基类,其他类则直接或间接地从基类继承而来,称为派生类动态绑定:在一定程度上忽略相似类型的区别,而以统一的方式使用...原创 2018-05-05 22:00:23 · 538 阅读 · 0 评论 -
C++ 学习笔记之(10) - 泛型算法和迭代器
C++ 学习笔记之(10) - 泛型算法和迭代器C++ 学习笔记之(10) - 泛型算法和迭代器概述初识泛型算法只读算法写容器元素的算法重排容器元素的算法定制操作向算法传递函数lambda表达式参数绑定标准库 bind函数placeholders命名空间bind 的参数bind无法绑定引用参数再探迭代器插入迭代器iostream迭代器istre...原创 2018-04-28 12:56:35 · 384 阅读 · 0 评论 -
C++ 学习笔记之(11) - 关联容器
C++ 学习笔记之(11) - 关联容器关联容器和顺序容器有着根本的不同,关联容器中的元素是按关键字来保存和访问的,与之相对,顺序容器中的而元素是按照他们在容器中的位置来顺序保存和访问的。关联容器支持高效的关键字查找和访问,关键字起到索引的作用。标准库提供了8个关联容器,它们的不同体现在三个维度上或者是set,或者是map或者要求不重复的关键字; 或者允许重复的关键字,容器名字包含...原创 2018-04-28 18:03:15 · 301 阅读 · 0 评论 -
C++ 学习笔记之(16)-模板与泛型编程
C++ 学习笔记之(16)-模板与泛型编程面向对象编程(OOP)和泛型编程都能处理在编写程序时不知道类型的情况。不同之处在于OOP能处理类型在程序运行之前都未知的情况;而在泛型编程汇总,编译时即可获知类型。定义模板函数模板函数模板就是公式,可用来生成针对特定类型的函数版本。template \template <typename T>int comp...原创 2018-05-07 21:11:48 · 294 阅读 · 0 评论 -
C++ 学习笔记之(17)-标准库特殊设施(tuple类型、bitset类型、正则表达式、随机数以及IO库再探)
C++ 学习笔记之(17)-标准库特殊设施(tuple类型、bitset类型、正则表达式、随机数以及IO库再探)标准库内容巨大,故仅介绍某些标准库设施:tuple、bitset、正则表达式以及随机数,此外还有一些IO库功能:格式控制、未初始化IO和随机访问tuple类型tuple类似与pair,但pair只有两个成员,tuple却有任意数量的成员定义和初始化tuple...原创 2018-05-08 15:17:09 · 258 阅读 · 0 评论 -
大话数据结构学习笔记 - 树的基础知识
大话数据结构学习笔记之(6) - 树树的定义树(Tree)是 n(n≥0)n(n≥0) n (n \geq 0) 个结点的有限集。n=0n=0n = 0时称为空树。在任意一颗非空树中有且仅有一个特定的称为根(Root)的结点当 n&amp;amp;amp;gt;1n&amp;amp;amp;gt;1 n &amp;amp;gt; 1时,其余结点可分为 m(m&amp;amp;amp;gt;0)m(m&amp;原创 2018-05-22 10:47:52 · 492 阅读 · 0 评论 -
大话数据结构学习笔记 - 二叉树
大话数据结构学习笔记之(7) - 二叉树二叉树的定义二叉树(Binary Tree)是n(n≥0)n(n≥0)n (n \geq 0) 个结点的有限集合, 该集合或者为空集(称为空二叉树),或者由一个根节点和两棵互不相交的、分别称为根节点的左子树和右子树的二叉树组成二叉树特点特点每个结点最多有两棵子树,故不存在度大于2的结点左子树和右子树是有顺序的,次序不能任意...原创 2018-05-22 11:00:05 · 637 阅读 · 0 评论 -
C++ 学习笔记之(9)-顺序容器及适配器
C++ 学习笔记之(9)-顺序容器及适配器C++ 学习笔记之(9)-顺序容器及适配器顺序容器概述容器库概览迭代器 容器类型成员begin和end成员容器定义和初始化将一个容器初始化为另一个容器的拷贝赋值和 swap容器大小操作关系运算符顺序容器操作向顺序容器中添加元素访问元素删除元素特殊的forward_list操作改变容器大小容器操作可能是迭代器...原创 2018-04-26 16:10:18 · 180 阅读 · 0 评论 -
C++ 学习笔记之(8)-IO 库
C++ 学习笔记之(8)-IO 库IO库定义了读写内置类型值的操作。此外,一些类,如string,会自定义类似IO操作,读写本身对象IO类为了支持不同种类的IO处理操作,比如读写宽字符,string类,文件等,在istream和ostream之外,标准库还定义了其他一些IO类型以w开头的类型用来处理wchar_t类型数据,即宽字符语言IO对象无拷贝或赋值进行I...原创 2018-04-25 20:52:52 · 127 阅读 · 0 评论 -
C++ 学习笔记之(13) - 拷贝控制
C++ 学习笔记之(13) - 拷贝控制本文将学习类如何通过一组函数控制对象拷贝、赋值、移动和销毁,这组函数分别是拷贝构造函数、移动构造函数、拷贝赋值运算符、移动赋值运算符以及析构函数。若类没有显示定义这些拷贝控制成员,则编译器会自动定义。拷贝、赋值与销毁拷贝构造函数如果一个构造函数的第一个参数是自身类类型的引用(几乎总为const引用),且任何额外参数都有默认值,则为拷贝...原创 2018-05-02 20:07:32 · 200 阅读 · 0 评论 -
C++格式化输出,C++输出格式控制
C++格式化输出,C++输出格式控制 在输出数据时,为简便起见,往往不指定输出的格式,由系统根据数据的类型采取默认的格式,但有时希望数据按指定的格式输出,如要求以十六进制或八进制形式输出一个 整数,对输出的小数只保留两位小数等。有两种方法可以达到此目的。一种是我们已经介绍过的使用控制符的方法(详情请查看:C++输入cout与输出cin);第2种是使用流对象的有关成员函数。分别叙述如下。使用控制符控...原创 2017-02-10 12:08:24 · 953 阅读 · 0 评论 -
C++ 输入cin 和输出cout
C++输入cout与输出cin输入和输出并不是C++语言中的正式组成成分。C和C++本身都没有为输入和输出提供专门的语句结构。输入输出不是由C++本身定义的,而是在编译系统提供的I/O库中定义的。C++的输出和输入是用“流”(stream)的方式实现的。图3.2和图3.3表示C++通过流进行输入输出的过程。有关流对象cin、cout和流运算符的定义等信息是存放在C++的输入输出流库中的,因此如果在...原创 2017-02-10 12:08:21 · 405 阅读 · 0 评论 -
C++ 学习笔记之(3)-字符串、向量和数组
C++ 学习笔记之(3)-字符串、向量和数组C++ 学习笔记之(3)-字符串、向量和数组命名空间的using声明标准库类型 string定义和初始化 string 对象string 对象上的操作处理 string 对象中的字符标准库类型 vector定义和初始化 vector 对象其他 vector 操作迭代器介绍使用迭代器迭代器运算数组定义和初始化内...原创 2018-04-19 10:50:09 · 279 阅读 · 3 评论 -
C++ 学习笔记之(6)-函数、重载和指针
C++ 学习笔记之(6)-函数、重载和指针函数基础函数定义包括以下几个部分 返回类型、函数名字、由0个或多个形参组成的列表以及函数体局部对象C++语言中,名字有作用域,对象有生命周期名字的作用域是程序文本的一部分,名字在其中可见对象的生命周期是程序执行过程中该对象存在的一段时间自动对象存在于块执行期间的对象成为自动对象,即执行到变量定义时创建对象...原创 2018-04-23 17:04:36 · 274 阅读 · 0 评论 -
C++ 学习笔记之(4)-表达式、运算符与类型转换
C++ 学习笔记之(4)-表达式、运算符与类型转换C++ 学习笔记之(4)-表达式、运算符与类型转换基础基本概念求值顺序算术运算符逻辑和关系运算符赋值运算符递增和递减运算符、成员访问运算符、条件运算符位运算符sizeof 运算符类型转换算数转换其他隐式类型转换显示转换static_castconst_castreinterpret_castdyna...原创 2018-04-19 20:09:35 · 462 阅读 · 0 评论 -
C++ 学习笔记之(12) - 动态内存、智能指针和动态数组
C++ 学习笔记之(12) - 动态内存、智能指针和动态数组程序中所使用的对象都有严格定义的生存期。全局对象:在程序启动时分配,程序结束时销毁局部自动对象:程序进入其定义所在块时创建,离开块时销毁局部static对象:第一次使用前分配,程序结束时销毁动态分配对象:显示创建,显示释放内存存放区间静态内存:局部static对象、类static数据成员以及定义在任何函数之外的...原创 2018-05-01 16:42:18 · 930 阅读 · 0 评论 -
C++ 学习笔记之(5)-语句和异常
C++ 学习笔记之(5)-语句和异常C++ 学习笔记之(5)-语句和异常条件语句迭代语句try语句块和异常处理throw 表达式try 语句块标准异常C++ 提供了一组控制流语句以支持更复杂的执行路径条件语句C++语言提供了两种条件语句,if语句和switch语句悬垂else:else与离它最近的尚未匹配的if匹配case 标签必须是整型常量表...原创 2018-04-20 15:30:17 · 214 阅读 · 0 评论 -
C++ 学习笔记之(18)-大型工程工具(异常处理、命名空间和多重继承与虚继承)
C++ 学习笔记之(18)-大型工程工具(异常处理、命名空间和多重继承与虚继承)异常处理异常处理(exception handling)机制能够对程序在运行时就出现的问题进行通信并作出相应的处理。抛出异常C++语言通过 抛出(throwing)表达式来 引发(raised)异常。throw后,程序控制权交给对应的catch模块,即throw后的语句将不再被执行。栈展开...原创 2018-05-09 10:59:05 · 282 阅读 · 0 评论 -
C++ 学习笔记之(7)-类
C++ 学习笔记之(7)-类类的基本思想是数据抽象和封装。封装实现了类的接口和实现的分离。数据抽象是依赖于接口和实现分离的编程技术。定义抽象数据类型定义改进的Sales_data类struct Sales_data{ std::string isbn() const { return bookNo; } Sales_data& combine(con...原创 2018-04-24 22:19:31 · 199 阅读 · 0 评论 -
大话数据结构学习笔记 - 线性表、顺序存储、单链表及静态链表
大话数据结构学习笔记之(3) - 线性表、顺序存储、单链表及静态链表定义线性表(List): 零个或多个数据元素的有限序列数学定义: 若将线性表记为(a1,...,ai−1,ai,ai+1,...,an)(a1,...,ai−1,ai,ai+1,...,an) (a_{1}, ..., a_{i-1}, a_{i}, a_{i+1}, ..., a_{n}), 则表中 ai−1ai−1...原创 2018-05-16 21:39:22 · 442 阅读 · 0 评论