C++ 模板基础
C++ 模板基础
Johhny Rade
年青
展开
-
01~C++ 函数模板
目的:尽量减少代码的编辑量/冗余结构 一、C 语言 祛冗余设计 01 原始代码模型 : 为了实现比对大小的算法,写了三个函数 ,岂不是很啰嗦? //max.c #include <stdio.h> #include <stdbool.h> // for C bool type bool max_int(int a, int b){ return a > b ? ...原创 2019-03-31 22:31:37 · 134 阅读 · 0 评论 -
02~C++类模板
XX原创 2019-03-31 22:35:46 · 226 阅读 · 0 评论 -
03~C++模板编译模型
文章目录1.C/C++ 传统编译模型2. C++ 模板包含模型2.1 包含模型2.2 包含模型优化2.3 分离模型(编译器需要支持) 1.C/C++ 传统编译模型 函数/变量 声明和定义分开存放,声明放在头文件,定义放在C文件或者CPP文件 优点 发行商发行头文件,源代码不公开 头文件越小,编译时间越短 如果函数定义或者变量定义在头文件中,会造成编译错误,典型代码如下: /*h.h*/ i...原创 2020-01-28 16:48:35 · 186 阅读 · 0 评论 -
04~C++智能指针
1、智能指针引入 有缺陷的代码设计 #include <iostream> #include <string> using namespace std; int demo(void) { string* tmp = new string; bool condition = false; /*do something, condition may become...原创 2019-04-06 14:17:17 · 101 阅读 · 0 评论 -
05~迭代器简介
文章目录1. 输入迭代器2. 输出迭代器3. 正向迭代器4. 双向迭代器5. 随机访问迭代器 1. 输入迭代器 输入迭代器用作输入设备的抽象,譬如终端输入。特点: 输入迭代器只读 输入跌带起只能++操作,不能- -操作 示例代码 // istream_iterator example #include <iostream> // std::cin, std::cout ...原创 2020-01-29 17:48:54 · 158 阅读 · 0 评论 -
06~容器简介
前言: 容器本质上就是软件的数据结构,数据逻辑结构类型对应于容器类型 文章目录1.2.3.4. 1. 2. 3. 4.翻译 2020-01-29 21:08:46 · 209 阅读 · 0 评论 -
07~关联容器简介
他山之石可以攻玉: 转载01: https://www.cnblogs.com/winslam/p/8975139.html 转载02: https://www.cnblogs.com/LearningTheLoad/p/7466057.html 转载03: http://www.cplusplus.com/reference/map/multimap/?kw=multimap ...翻译 2019-05-03 16:50:54 · 175 阅读 · 0 评论 -
08~函数对象/函数符
文章目录1. 函数符定义2. 预定义的函数符 1. 函数符定义 函数对象,也叫做函数符,定义: 函数符是可以和()结合起来完成函数调用的符号,有三种 函数名,函数指针,重载了operator()()函数的对象 #include <iostream> #include <list> #include <algorithm> using namespace std...翻译 2020-02-03 21:21:27 · 189 阅读 · 0 评论 -
09~STL算法
文章目录1. 算法分组2. STL 泛型算法2.1 copy2.2 sort remove ... 参考c++ ref3. STL 容器的成员算法 C++ STL算法有两个特点: 算法使用模板提供泛型,其次使用迭代器来提供容器的通用表示 1. 算法分组 常见的算法如下 sort copy find random_shuffle set_union set_intersection set_dif...翻译 2020-02-04 14:31:43 · 113 阅读 · 0 评论