- 0
- 0
- 约1.02万字
- 约 42页
- 2021-08-03 发布于湖北
- 举报
程序设计实习;标准模板库STL
(二);信息科学技术学院《程序设计实习》 郭炜;关联容器
set, multiset, map, multimap
内部元素有序排列,新元素插入的位置取决于它的值,查找速度快。
除了各容器都有的函数外,还支持以下成员函数:
find: 查找等于某个值 的元素(x小于y和y小于x同时不成立即为相等)
lower_bound : 查找某个下界
upper_bound : 查找某个上界
equal_range : 同时查找上界和下界
count :计算等于某个值的元素个数(x小于y和y小于x同时不成立即为相等)
insert: 用以插入一个元素或一个区间
;预备知识: pair 模板
templateclass _T1, class _T2
struct pair
{
typedef _T1 first_type;
typedef _T2 second_type;
_T1 first;
_T2 second;
pair(): first(), second() { }
pair(const _T1 __a, const _T2 __b)
: first(__a), second(__b) { }
templateclass _U1, class _U2
pair(const pair_U1, _U2 __p)
: first(__p.first), second(__p.second) { }
};;multiset
templateclass Key, class Pred = lessKey,
class A = allocatorKey
class multiset { …… };
Pred类型的变量决定了multiset 中的元素,“一个比另一个小”是怎么定义的。multiset运行过程中,比较两个元素x,y的大小的做法,就是生成一个 Pred类型的变量,假定为 op,若表达式op(x,y) 返回值为true,则 x比y小。
Pred的缺省类型是 lessKey。;multiset
templateclass Key, class Pred = lessKey,
class A = allocatorKey
class multiset { …… };
Pred类型的变量决定了multiset 中的元素,“一个比另一个小”是怎么定义的。multiset运行过程中,比较两个元素x,y的大小的做法,就是生成一个 Pred类型的变量,假定为 op,若表达式op(x,y) 返回值为true,则 x比y小。
Pred的缺省类型是 lessKey。
less 模板的定义:
templateclass T
struct less : public binary_functionT, T, bool
{ bool operator()(const T x, const T y) { return x y ; } const; };
//less模板是靠 来比较大小的;
;multiset的成员函数;multiset 的用法
#include set
using namespace std;
class A { };
int main() {
multisetA a;
a.insert( A()); //error
} ;multiset 的用法
#include set
using namespace std;
class A { };
int main() {
multisetA a;
a.insert( A()); //error
} ;multiset 的用法示例;struct MyLess {
bool operator()( const A a1, const A a2)
//按个位数比大小
{ return ( a1.n % 10 ) (a2.n % 10); }
};
typedef multisetA MSET1; //MSET1用 比较大小
typedef multisetA,MyLess MSET2; //MSET2用 MyLess::operator()比较大小
int main()
{
const int SIZE = 6;
A a[SIZE] = { 4,22,19,8,33,40 };
您可能关注的文档
- 《成本计算与管理》(舒文存)(第二版) 成本计算与管理PPT(舒文存)新版 成本计算与管理(项目十二) .ppt
- 《成本计算与管理》(舒文存)ppt 项目九.ppt
- 《成本计算与管理》(舒文存)新版 成本计算与管理(项目七) .ppt
- 《成本计算与管理》配套课件(高教版) 项目二.ppt
- 《成本计算与管理》配套课件(高教版) 项目四.ppt
- 《城轨行车组织》课件 单元八 突发事件时的行车组织.ppt
- 《城轨行车组织》课件 单元二 城轨车辆与驾驶.ppt
- 《城轨行车组织》课件 单元九 调车作业组织.ppt
- 《城轨行车组织》课件 单元六 正常情况下的行车组织.ppt
- 《城轨行车组织》课件 单元七 设备故障时的行车组织.ppt
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
原创力文档

文档评论(0)