1、自C++11起可以用range-based for循环来所有元素,但有时并不需要处理所有元素,此时可以使用迭代器。 std::vector<int> vec {1,2,3,4,5,6,7,8,9,10};…
标签:stl
容器分类
一、结构与分类 1、序列容器 A、Array:固定大小数组。 B、Vector :自动扩充的数组。 C、Deque:前后都可自动扩充的数组。 D、List:双向链表。 E、Forward-List:单向链表。 2、关联式…
C++string类实现
每篇激励自己的一句话:路,是一直在脚下,好好努力,明日必定越来越好。 string类实现 string构造函数 拷贝构造函数 赋值运算符重载函数 析构函数 迭代器与npos ️begin与e…
字符消除 和 substr()函数用法
首先说一下 substr() 的用法。 如果我们定义一个string字符串并初始化 string str = "ABCDEFG"; str1 = str.substr(1, 5); 表示的是从下标1开始往后截取长度为5的…
STL--set介绍及set的使用
1 set介绍 (1)set是STL中一个很有用的容器,用来存储同一种数据类型的数据结构(可以称之为K的模型),基本功能与数组相似。 (2)set与数组不同的是,在set中每个元素的值都是唯一的。 (3)而且set插入数…
C++ printf打印二进制,三进制,八进制,十六进制等(利用itoa)
printf是格式化输出函数,它可以直接打印十进制,八进制,十六进制,输出控制符分别为%d, %o, %x, 但是它不存在二进制,如果输出二进制可以调用stdlib.h里面的itoa函数。 itoa函数原型为…
模板 泛化 全特化 偏特化
template<>出现,就表示要特化了 为什么要特化呢?泛化不就是为了解决数据类型不一致吗? 泛化是通用,特化是优化,缺一不可 特化,又被成为全特化 full-specialization 偏特化 Part…
圆桌问题
圆桌问题 题目: Problem Description 圆桌上围坐着2n个人。其中n个人是好人,另外n个人是坏人。如果从第一个人开始数数,数到第m个人,则立即处死该人;然后从被处死的人之后开始数数,再将数到的第m个人处…
map和set的异同
异同分析 MAP的节点是一对数据. SET的节点是一个数据. map使用关键值Key来唯一标识每一个成员, map的value值可以重复。 set存储已排序的无重复的元素。 都属于关联容器 ,形式不同: map的形式 m…
STL--set介绍及set的使用
1 set介绍 (1)set是STL中一个很有用的容器,用来存储同一种数据类型的数据结构(可以称之为K的模型),基本功能与数组相似。 (2)set与数组不同的是,在set中每个元素的值都是唯一的。 (3)而且set插入数…