go
-
C++ vector删除元素(数据)详解
正像所说的那样,只能通过容器的成员函数来删除元素。可以通过使用 vector 的成员函数 clear() 来删除所有的元素。例如: std::vector<int> d…
-
C++ array迭代器及用法
数组模板定义了成员函数 begin() 和 end(),分别返回指向第一个元素和最后一个元素的下一个位置的随机访问迭代器。如前面章节所述,随机访问迭代器具有最多的功能,能使用它进行…
-
C++强制类型转换运算符(static_cast、reinterpret_cast、const_cast和dynamic_cast)
将类型名作为强制类型转换运算符的做法是C语言的老式做法,C++ 为保持兼容而予以保留。 C++ 引入了四种功能不同的强制类型转换运算符以进行强制类型转换:static_cast、r…
-
C语言字符串数组
字符串是连续的字符序列,最后以空字符'/0'作为终止符。一个字符串的长度指所有字符的数量,但不包括终止符。在 C 语言中,没有字符串类型,自然也就没有运算符以字符串…
-
C++ string类(C++字符串)完全攻略
string 类是 STL 中 basic_string 模板实例化得到的模板类。其定义如下: typedef basic_string <char> string; …
-
STL算法分类
在 STL 中,算法就是函数模板。STL 中的算法大多数是用来对容器进行操作的,如排序、 查找等。大部分算法都是在头文件 <algorithm> 中定义的,还有些算法用…
-
setjump和longjump函数及使用注意事项,C语言setjump和longjump函数详解
前面已经阐述过,对错误处理而言,goto 语句只能是在函数的局部作用域内跳转,而不能实现跨函数跳转。但在实际错误处理中,经常会遇到这样的场景:在一个深度嵌套的函数调用中发生了错误,…
-
puts和fputs函数及其区别,C语言puts和fputs函数详解
与 gets 函数一样,对于 puts 函数,同样建议使用 fputs 函数来代替 puts 函数。如下面的示例代码所示: int main(void) { char buffer…
-
STL算法详解
STL 提供能在各种容器中通用的算法(大约有70种),如插入、删除、查找、排序等。算法就是函数模板。算法通过迭代器来操纵容器中的元素。 许多算法操作的是容器上的一个区间(也可以是整…
-
C++迭代器(STL迭代器)iterator详解
要访问顺序容器和关联容器中的元素,需要通过“迭代器(iterator)”进行。迭代器是一个变量,相当于容器和操纵容器的算法之间的中介。迭代器可以指向容器中的…