
C++
BANANAML
这个作者很懒,什么都没留下…
展开
-
C++11新特性一
1.使用初始化器列表{}来进行一致且通用的初始化使用初始化列表器可以进行一致且通用的初始化。不受类型的限制,在所有的场景中都能使用。1)初始化简单内置变量如 int a = {3};也可以不使用等号如 int a {3};2)初始化容器vectorvector nums {1,2,3,4,5};使用初始化器列表时等号可写可不写;优点:使用列表初始化能够防止窄化转换(即列表初始化...原创 2019-12-07 18:01:23 · 250 阅读 · 0 评论 -
C/C++ string和char的区别
C语言在C中,char是定义一个字符,存储的是一个字符,占一个字节,而字符串是使用’\0’终止的一维字符数组(字符串的长度为字符个数加1,’\0’也占一个长度),定义一个字符串可以如下:char greet[] = "hello";//上面的语句可以写成以下语句char greet[6] = {'h','e','l','l','o','\0'};C中常用的操作字符串的函数如下:st...原创 2019-12-04 18:28:23 · 2403 阅读 · 0 评论 -
vector中的size,capacity,resize和reserve区分 C++
vectorvector是C++中的顺序容器,是一种动态数组,支持下标访问,下标访问的时间复杂度为O(1),在容器尾部之外的位置进行元素的插入和删除需要移动部分数组元素,时间复杂度为O(n)。区分size指当前容器所存储的元素个数capacity指容器在分配新的存储空间能存储的元素总数以上两个概念的区分就是capacity是容器能存储元素的最大总数,而size是当前容器存储元素的个数...原创 2019-11-07 19:34:59 · 990 阅读 · 1 评论 -
map与unordered_map,set与unordered_set的比较
map与unordered_map这里提一下,unordered_map在C++11的时候被引入标准库,而hash_map没有,所以建议使用unordered_map。内部实现机理不同map:map的底层是一个红黑树(红黑树是非严格的平衡二叉搜索树),红黑树具有自动排序的功能,因此map内部的所有元素是有序的,map中的每一个元素都对应着红黑树中的一个节点,因此,map元素的查找、删除、插...原创 2019-10-25 10:59:25 · 868 阅读 · 0 评论