| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 832 人关注过本帖
标题:[求助]关于谓词
取消只看楼主 加入收藏
ichigo
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2007-5-27
收藏
 问题点数:0 回复次数:3 
[求助]关于谓词

#include <iostream>
#include <map>


class compare
{
public:
bool operator()(const int c1, const int c2) const
{
std::cout << "In Compare: "
<< c1 << " -- " << c2 << std::endl;
return c1 < c2;
}
};

////////////////////////////////////////
// The main() function.
////////////////////////////////////////
int main()
{
// Create the map object.
std::map<int, char, compare> charMap;

// Populate the map with values.
std::cout << "Adding elements to the map:" << std::endl;
charMap.insert(std::map<int, char>::value_type(1,'A'));
charMap.insert(std::map<int, char>::value_type(3,'C'));
charMap.insert(std::map<int, char>::value_type(2,'B'));
charMap.insert(std::map<int, char>::value_type(4,'D'));

// Display the contents of the map.
std::cout << std::endl << "Contents of map: " << std::endl;
map<int, char>::iterator iter;
for (iter = charMap.begin();
iter != charMap.end(); iter++)
{
std::cout << (*iter).first << " --> ";
std::cout << (*iter).second << std::endl;
}

return 0;
}




这个程序中compare类是一个表示谓词的类
我不明白他是如何来控制元素的排列顺序问题
当中的参数c1,c2是映射中的哪两个值
多谢大家帮忙讲解一下...谢谢...

搜索更多相关主题的帖子: 谓词 int std map const 
2007-07-03 13:59
ichigo
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2007-5-27
收藏
得分:0 
以下是引用aipb2007在2007-7-3 16:19:41的发言:
这你要看map的成员函数是怎样插入新元素的,跟踪下insert函数,看看实现代码。
不过stl封装的很深,想看明白还是不容易哦。

...看了也看不懂...那不是等于没说...

2007-07-03 21:02
ichigo
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2007-5-27
收藏
得分:0 
我想知道这个例子中的C1跟C2分别是charMap.insert(std::map<int, char>::value_type(1,'A'));
中的哪个INT值
2007-07-04 13:06
ichigo
Rank: 1
等 级:新手上路
帖 子:66
专家分:0
注 册:2007-5-27
收藏
得分:0 
顶上来~~~~~~~~~~!!!哪位大哥帮忙解决一下...
2007-07-04 23:25
快速回复:[求助]关于谓词
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028647 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved