starnet 阅读(932) 评论(4)

#include "stdafx.h"
#include <map>
#include <iostream>
#include <string>
#include <vector>
#include <set>

using namespace std;


int main(int argc, char* argv[])
{
 set<string>  set_str;
 set_str.insert("one");
 set_str.insert("tow");
 set_str.insert("three");

 set<string>::iterator it = set_str.begin();
 while(it != set_str.end())
 {
  cout<<*it<<endl;
  it++;
 }

 return 0;
}

/*
输出结果为什么是:
one
three
tow
Press any key to continue
*/


评论列表
毛毛
re: 输出结果为什么是这样?

map 和 set 自己会维护元素的顺序吧。毕竟是为了方便查找元素的。
oshj
re: 输出结果为什么是这样?

输出的集合中的元素是按字母大小顺序排列的,而且每个值都不重复。

你把第二个改成 "tgw", 用 three 的 "h" 前面的数字或字母,再看看结果就明白了
^_^
re: 输出结果为什么是这样?
tow --> two

hehe ^_^
student
哦,原来如比
我还真分不出two和tow!!!

发表评论
切换编辑模式