关闭

STL输入和输出流-格式化

1.1 格式化标记 使用方法:通过成员函数setf()和unsetf(),可接收这些标记做实参。 std::ios::boolalpha std::ios::hex std::ios::internal std::ios::left std::ios::oct std::ios::right std::ios::scientific std::ios::showbase std...
阅读(750) 评论(0)

STL输入和输出流-定义

一、iostream对象 1.1 输入和输出流对象 定义:stream是一条数据流,字符序列在其中川流不息。 头文件:#include 包含头文件后,程序将自动创建8个stream对象(4个用于窄字符,4个用于宽字符): cin/wcin 对应标准输入stream,默认关联到标准输入设备。 cout/wcout 对应标准输出stream,默认关联到标准输出设备。 cerr/wce...
阅读(935) 评论(0)

STL算法库-数字运算(三)

四、通用数值计算 头文件:#include 4.1 求和(accumulate) T accumulate(iterator first,iterator last T val); 计算[first,last]中数字的总和,将该值添加到数值val上. T accumulate(iterator first,iterator last,T Val, BinaryOperator op)...
阅读(585) 评论(0)

STL算法库-数字运算(二)

三、数组(向量)运算 STL提供了一个数组类valarray,用于实现数值数组的运算,其代表数值线性序列。 3.1 头文件 #include 3.2 构造函数 valarray(); explicite valarray(size_t n); valarray(const T& val,size_t n); valarray(const T* P,size_t n); valar...
阅读(680) 评论(0)

STL算法库-数字运算(一)

一、定义 包括区间的内容累积、内部乘积、小计、计算相邻对象差等函数 二、复数运算 2.1 头文件 #include "complex" 2.2 复数成员函数 2.2.1 构造函数: complex(const T& re=0,complex T& im=0); complex(const complex& x); 2.2.2 实部和虚部函数 T real()const; ...
阅读(395) 评论(0)

STL迭代器

一、 迭代器的分类 1.1 输入迭代器 输入迭代器主要用于为需要的数据源提供输入接口,该数据源可以是容器、数据流等。输入迭代器只能够从一个序列中读取数据,此类迭代器可以被修改和引用。只能一个一个读取,并且按此顺序传回元素值。最简单的例子就是从标准输入读取数据的迭代器,同一个值不会被读取两次,一旦从输入流中读取一个字后,下次读取时会读取另一个字。 1.2 输出迭代器 输出迭代器,主要用于输出...
阅读(388) 评论(0)

STL算法库-删除算法

一、remove 原型:remove(iterator first,iterator last,const T& val) 定义:移除所有值到等于val的元素,函数返回删除后的序列的末尾位置,序列的大小不变,用最后一个元素进行补齐 原型:remove_if(iterator first,iterator last,Pred pr) 定义:移除所有使得pr值为true的元素,函数返回删除后序...
阅读(598) 评论(0)

STL算法库-排序和相关操作(二)

六、合并排序 6.1 两个已序集合的总和(merge) 原型:merge(iterator1 first1,iterator1 last1,iterator2 first2,iterator last2,OutputIterator dest) 定义:将两个已序集合进行合并,合并后进行重新排序,不排除重复元素,必须保证原序列有序 原型:merge(iterator1 first1,iter...
阅读(456) 评论(0)

STL算法库-排序和相关操作(一)

一、定义 通过对容器中元素的赋值和变换,改变元素顺序,不适合关联式容器 二、全部元素排序 该排序算法只支持随机存储迭代器,因此只适合vector和deque型容器,不适合list容器,list有自己的成员函数sort进行排序 原型:sort(iterator begin,iterator end); 定义:默认升序排序 原型:sort(iterator begin,iterator e...
阅读(379) 评论(0)

STL算法库-修改序列式操作(二)

五、替换 原型:replace(iterator first,iterator last,const T& OldValue,Const T& NewValue); 定义:在区间[first,last]中,用NewValue替换OldValue 原型:replace(iterator first,iterator last, Pred pred,const T& NewValue); 定义...
阅读(796) 评论(0)

STL算法库-修改序列式操作(一)

定义:一般不直接改变容器中元素的值,或者在复制到另一区间的过程中改变元素值 一、复制 原型:iterator2 copy(iterator1 first,iterator1 end,iterator2 dest); 定义:copy函数正向遍历序列,如果要把一个区间复制到前端,应该使用copy(),此时目标位置应该在first之前 原型:iterator2 copy_backward(ite...
阅读(575) 评论(0)

STL算法库-非修改序列式操作(二)

六、搜寻算法 6.1 第一组搜索算法函数(搜寻第一个匹配元素的位置) 原型:iterator find(iterator begin,iterator end,const T& value) 定义:找出第一个和value相等的元素的迭代器,若搜索失败,返回end 原型:iterator find_if(iterator begin,iterator end,UnaryPredicate...
阅读(454) 评论(0)

STL算法库-非修改序列式操作(一)

一、定义 不改变元素的顺序,也不改变元素值,可用于所有的容器操作。 二、for_each()算法 原型:for_each(iterator begin,iterator end,proc op) 作用:for_each算法实现对区间[begin,end]中每一个元素均调用进程op 2.1 一般用法 如下,打印输出容器中的每一个元素: #include "stdafx.h" #incl...
阅读(832) 评论(0)

STL容器-关联式容器map/multimap

容器map是键-值对的集合,可理解成关联数组,可通过键作为下标获取对应的值 一、map/multimap的定义、初始化 1、定义一个空的映射,默认按照升序排序 map mymap; 2、定义一个按照键值逆序排序的映射 方案一,在类模板中加入仿函数 map> mymap; 方案二,在类的构造函数中加入仿函数 map mymap(greater); 3、用另外一个映射初始化映射 m...
阅读(636) 评论(0)

STL容器-关联式容器set/multiset

集合元素既充当存储的数据,又充当数据的关键码,集合更像一个有序链表,元素默认升序存储。 一、集合set的定义 1、定义一个空的集合,自动按照升序排序:set myset; 2、定义一个空的集合,按照降序排序,有两种形式,可能不同的编译器会支持不同形式 形式1,模板含有多个参数(vs2010中调试通过):set> myset; 形式2,构造函数含有多个参数的形式:set myset(gre...
阅读(491) 评论(0)
18条 共2页1 2 下一页 尾页
    个人资料
    • 访问:370344次
    • 积分:6489
    • 等级:
    • 排名:第3958名
    • 原创:292篇
    • 转载:17篇
    • 译文:1篇
    • 评论:61条
    其它平台
    博客专栏