C/C++ vector 中 emplace_back 方法的用途 在写代码的过程中,CLion 提醒我把 push_back 方法替换成 emplace_back 方法: emplace_back 函数的作用是减少对象拷贝和构造次数,是 C++11 中的新特性,主要适用于对临时对象... 04 月 06 日12,2551 stl 阅读全文
C/C++ 关于 vector 的扩容机制 往 vector 中添加元素时,如果空间不够将会导致扩容。 vector 有两个属性:size 和 capacity 。 size 表示已经使用的数据容量,capacity 表示数组的实际容量,包含已使用的和未使用的。 ... 01 月 20 日6,046评论stl 阅读全文
C/C++ STL 中的迭代器失效 一、迭代器失效 向容器添加或者删除元素可能会导致指向容器的指针、引用或者迭代器失效。使用已经失效的指针、引用或者迭代器将会导致程序出现异常,编码过程中一定要时刻注意迭代器失效的场景。 例如,以 vect... 01 月 15 日516评论stl 阅读全文
C/C++ std::string 中 size() 和 length() 的区别 STL 中的 string 类有两个方法 size() 和 length() 用来返回字符串的长度。 两者在实现上没有区别: [crayon-6859a49e485a5536876883/] &nbs... 07 月 02 日3,362评论stl 阅读全文
C/C++ vector 中 reserve 和 resize 的区别 reserve 方法用来给 vector 预留空间,预留的空间只会改变 capacity 的大小,不会改变 size 大小。 resize 方法表示重新调整数组大小,capacity 和 size 都会改变。 使用 reser... 04 月 13 日224评论stl 阅读全文
C/C++ STL 标准类型 vector(一):vector 的基本用法 一、 vector 介绍 标准库类型 vector 用来表示对象的集合,其中所有对象的类型都相同且不固定长度,常被称为 「动态数组」 。 它并不是一个标准的数据类型,而是一个类模板用来实例其他对象,也被称为容器。... 01 月 21 日1,045评论stl 阅读全文
C/C++ STL 标准库类型 string(一):string 的基本用法 一、概述 标准库类型 string 用来表示可变长的字符串序列,使用它需要包含 string 头文件。 作为标准库的一部分,它被定义在 std 命名空间中,使用前需要加上以下代码: [crayon-6859a49... 01 月 16 日253评论c++11 stl 阅读全文