boost_foreach

#include<stdio.h>
#include<string>
#include<iostream>
#include<string.h>
#include<map>:wq
#include <boost/foreach.hpp>

int main()
{
//typedef std::pair<int, int> IdSizePair_t;
std::map<int,int> mmap;    
mmap[1] = 1;
mmap[2] = 2;
mmap[3] = 3;
//BOOST_FOREACH( IdSizePair_t i, mmap )
//    i.second++;

typedef std::map<int, int> map_t;
map_t mmap;  
BOOST_FOREACH( map_t::value_type &i, mmap )
    i.second++;

BOOST_FOREACH( IdSizePair_t i, mmap )
    cout << i.second << endl;

	return 0;
}

#include<stdio.h>
#include<string>
#include<iostream>
#include<string.h>
#include<map>
#include <boost/foreach.hpp>
using namespace std;
int main()
{
//typedef std::pair<int, int> IdSizePair_t;
std::map<int,int> mmap;    
mmap[1] = 1;
mmap[2] = 2;
mmap[3] = 3;
//BOOST_FOREACH( IdSizePair_t i, mmap )
//    i.second++;

typedef std::map<int, int> map_t;
//map_t mmap;  
BOOST_FOREACH(map_t::value_type &i, mmap )
    i.second++;

BOOST_FOREACH(map_t::value_type i, mmap )
    cout << i.second << endl;

        return 0;
}

或者:
int main()
{
typedef std::pair<const int, int> IdSizePair_t; //因爲map的key是const類型的
std::map<int,int> mmap;    
mmap[1] = 1;
mmap[2] = 2;
mmap[3] = 3;
BOOST_FOREACH( IdSizePair_t &i, mmap )
  i.second++;

BOOST_FOREACH( IdSizePair_t i, mmap )
    cout << i.second << endl;

        return 0;
}




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章