C++ primer 第十章

关联容器,完全没用过,一直想用,FUC,本文只介绍初级使用方式,不能贪多


#include<iostream>
#include<map>
#include<set>
#include<string>
using namespace std;

typedef pair<int,string> Auth;

int main()
{
map<int,string> m;
set<string> s;

Auth p1,p2,p3,p4;
p1 = make_pair(1,"s");
p2 = make_pair(2,"y");
p3 = make_pair(3,"t");
p4 = make_pair(3,"z");
m.insert(p1);
m.insert(p2);
m.insert(p3);
cout<<m[3]<<endl;
map<int,string>::iterator it;
if( (it = m.find(3)) != m.end())
{
it->second = "z";
}else
{
m.insert(p4);
}
cout<<m[3]<<endl;
}

map set multimap multiset

pair:

typedef pair<string,string> Author; Author proust("abc","def");Author
joyce("dd","ee");

Author syt; syt = make_pair("ee","ff"); first,second,公有访问

map 类型

键可以自由定义一个若排序,但注意自己定义的小于不能出现环,并且不能修改

C++ primer 第十章,布布扣,bubuko.com

时间: 2024-12-28 15:25:04

C++ primer 第十章的相关文章

C++primer第十章 关联容器

关联容器和顺序容器的本质差别在于:关联容器通过键(key)存储和读取元素,而顺序容器则通过元素在容器中的位置顺序存储和访问元素. 一般来说,如果希望有效地存储不同值的集合,那么使用 set 容器比较合适,而 map 容器则更适用于需要存储(乃至修改)每个键所关联的值的情况.在做某种文本处理时,可使用 set 保存要忽略的单词.而字典则是 map 的一种很好的应用:单词本身是键,而它的解释说明则是值. set 和 map 类型的对象所包含的元素都具有不同的键,不允许为同一个键添加第二个元素.如果一

C primer 第十章 函数 浅谈 实参和形参

使用函数的目的: 省去重复代码的编写,可以在多个地方调用,使得程序模块化 主要分三步: 声明函数原型  使用函数  定义函数 1 #include<stdio.h> 2 #include<string.h> 3 #define NAME "heipi" 4 #define ADDRESS "wu han university of techonology " 5 #define PLACE "shang hai , pu dong

编程题目记录140522:C++的第一份还算丰富的代码

题目: C++ primer第十章的大作业,打开一个文件,输入一个字符串,查找该字符串出现的所有地方并列出 计划: TestQuery类.尝试通过multimap来替代原书中map 和set的功能 class TestQuery { public: void InputFile(ifstream *fptr) { StoreLines(fptr); WordCount(); } void StoreLines(ifstream *fptr); void WordCount(); void Que

c++ primer plus(第6版)中文版 第十章编程练习答案

第十章编程练习答案 10.1为复习题5类提供定义,并演示 //10.1为复习题5类提供定义,并演示 #include <iostream> using namespace std; class BankAccount { string m_name; string m_num; unsigned m_balance; public: BankAccount (string name, string num, unsigned balance) { m_name = name; m_num =

c++ primer 5th 笔记:第十章

第十章:泛型算法 笔记 1. 标准库并未给每个容器添加大量功能,而是提供了一组算法,这些算法(通用的)中的大多数都独立于任何特定的容器. 2. 大多数算法都定义在头文件algorithm中,另外在头文件numeric中定义了一组数值泛型算法. 3. 保证算法有足够的元素空间开容纳输出数据的方法是使用插入迭代器,back_inserter接受一个指向容器的引用,返回一个与该容器绑定的插入迭代器: vector<int> vec; // 空向量 auto it = back_inserter(ve

C Primer Plus (第五版) 第十章 数组和指针 编程练习

第十章 数组和指针 编程练习 1.修改程序清单10.7中的程序rain,使它不使用数组下标,而是使用指针进行计算(程序中仍然需要声明并初始化数组). # include <stdio.h> # define MONTHS 12 # define YEARS 5 int main(void) { //把数组初始化为2000年到2004年的降水量数据 const float rain[YEARS][MONTHS] = { { 4.3, 4.3, 4.3, 3.0, 2.0, 1.2, 0.2, 0

C++ Primer Plus学习:第十章

过程性编程和面向对象编程 面向对象编程(OOP)的特性: 抽象 封装和数据隐藏 多态 继承 代码的可重用性 抽象和类 类是一种将抽象转化为用户定义类型的C++工具,它将数据表示和操纵数据的方法合成一个简洁的包. 类的构造函数和析构函数 构造函数:与类名相同 析构函数:~类名 对象初始化方式: classname cn=classname(….);或者classname cn(…); 若类的成员函数不修改调用对象,就应该标识为const类型,如:void show() const; this指针

C++primer拾遗(第十章:泛型算法)

泛型算法,重要而且常用.虽然只是看了一遍书,但是感觉需要研究的地方还很多. 总结不易,转载注明出处,谢谢. http://www.cnblogs.com/linhaowei0389/

【学习C++】C++ Primer Plus (第六版)第十章编程练习1-8

1. #include <iostream> #include <string> class Account{ private: std::string name; std::string number; double deposit; public: Account(const std::string & na="no name",const std::string & nu="0",int de=0); void show