map and count

来源:互联网 发布:linux删除用户和组 编辑:程序博客网 时间:2024/06/05 06:53

map::count

Visual Studio .NET 2003
其他版本
0(共 1)对本文的评价是有帮助 评价此主题

Returns the number of elements in a map whose key matches a parameter-specified key.

size_type count(   const Key& _Key) const;

Parameter

_Key
The key value of the elements to be matched from the map.

Return Value

1 if the map contains an element whose sort key matches the parameter key; 0 if the map does not contain an element with a matching key.

Remarks

The member function returns the number of elements x in the range

[lower_bound (_Key ), upper_bound (_Key ) )

which is 0 or 1 in the case of map, which is a unique associative container.

Example

// map_count.cpp// compile with: /EHsc#include <map>#include <iostream>int main( ){   using namespace std;   map <int, int> m1;   int i;   typedef pair <int, int> Int_Pair;   m1.insert ( Int_Pair ( 1, 1 ) );   m1.insert ( Int_Pair ( 2, 1 ) );   m1.insert ( Int_Pair ( 1, 4 ) );   m1.insert ( Int_Pair ( 2, 1 ) );      // Keys must be unique in map, so duplicates are ignored   i = m1.count( 1 );   cout << "The number of elements in m1 with a sort key of 1 is: "        << i << "." << endl;   i = m1.count( 2 );   cout << "The number of elements in m1 with a sort key of 2 is: "        << i << "." << endl;   i = m1.count( 3 );   cout << "The number of elements in m1 with a sort key of 3 is: "        << i << "." << endl;}

Output

The number of elements in m1 with a sort key of 1 is: 1.The number of elements in m1 with a sort key of 2 is: 1.The number of elements in m1 with a sort key of 3 is: 0.

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

void main(){ //定义map 对象 map<string,int> word; //定义指针 map<string,int>::iterator it; //向word 插入元素 ("a",9) word.insert (map<string,int>::value_type("a",9));

 //查找 键是"a"的元素,返回指向元素的指针。 it=word.find ("a"); //如果元素不存在,指针指向word.end(). if(it!=word.end ())  cout<<it->second<<endl; //输出元素的值

 //查找 键是"a"的元素, int result=word.count ("a"); //如果键存在返回1,否则返回0 if(result)  cout<<word["a"]<<endl; //输出元素的值 

 cout<<endl;}

public member function
<map>

std::map::count

size_type count (const key_type& k) const;
Count elements with a specific key
Searches the container for elements with a key equivalent to k and returns the number of matches.

Because all elements in a map container are unique, the function can only return 1 (if the element is found) or zero (otherwise).

Two keys are considered equivalent if the container's comparison object returns false reflexively (i.e., no matter the order in which the keys are passed as arguments).

Parameters

k
Key to search for.
Member type key_type is the type of the element keys in the container, defined in map as an alias of its first template parameter (Key).

Return value

1 if the container contains an element whose key is equivalent to k, or zero otherwise.

Member type size_type is an unsigned integral type.

Example

123456789101112131415161718192021222324
// map::count#include <iostream>#include <map>int main (){  std::map<char,int> mymap;  char c;  mymap ['a']=101;  mymap ['c']=202;  mymap ['f']=303;  for (c='a'; c<'h'; c++)  {    std::cout << c;    if (mymap.count(c)>0)      std::cout << " is an element of mymap.\n";    else       std::cout << " is not an element of mymap.\n";  }  return 0;}


Output:
a is an element of mymap.b is not an element of mymap.c is an element of mymap.d is not an element of mymap.e is not an element of mymap.f is an element of mymap.g is not an element of mymap.

0 0
原创粉丝点击