2013年8月17日

C++ string和c类型字符数组的比较

摘要: 在c++中string是很方便操作的字符串,支持多种算数运算和比较运算,操作起来非常灵活。string也具有一些容器的性质,可以通过迭代器对字符元素进行访问c类型的字符数组有如下三种初始化方式://前两种的初始化方式是等同的,最后一种没有‘\0’char *cp="hello";char c_arr[]="hello";char c_arr2[]={'h','e','l','l','o'};这三种定义c字符串的方式,其中前两种虽然形式不一样但含义是一摸一样的,没有差别,在计算 阅读全文

posted @ 2013-08-17 20:59 jfcspring 阅读(2502) 评论(2) 推荐(0) 编辑

C++ 顺序容器 vector list deque 之比较

摘要: 在C++标准库中定义了三种顺序容器类型:vector,list和deque。所谓顺序容器就是根据位置来存储和访问元素,元素的排列次序与元素的值无关,而是由元素添加到容器的次序决定的。vector的底层存放空间是像数组一样连续的空间,但vector容器是可以自增长的,当vector插入元素时,使其所需空间超过最初分配的空间时,vector就会再找一个更大的连续的空间存放之前的旧元素和新添加的元素,然后释放之前的空间。而如果是这样的增长机制,势必会影响vector插入新元素的性能。因为如果有连续的插入操作,则每一次都要进行申请空间,复制元素,释放空间的操作。幸运的是,在vector分配内存的机制是 阅读全文

posted @ 2013-08-17 17:01 jfcspring 阅读(786) 评论(0) 推荐(0) 编辑

导航