STL中map的成员函数insert的返回值

http://hi.baidu.com/tiger_tnt/blog/item/3e6be9b5609ddcca36d3caa9.html

 

      map在进行插入的时候是不允许有重复的键值的,如果新插入的键值与原有的键值重复则插入无效,可以通过insert的返回值来判断是否成功插入。下面是insert的函数原型:
      pair<iterator, bool> insert(const value_type& x);
可以通过返回的pair中第二个bool型变量来判断是否插入成功。下面是代码:

#include <map>
#include <iostream>

int main(){

    std::map< int,int > ll;
    ll.insert( std::pair< int,int >(1,2) );

    std::pair< std::map< int,int >::iterator,bool > ret;
    ret=ll.insert( std::pair< int,int >(1,3) );
   
    if( ret.second ){
        std::cout<<"成功"<<std::endl;
    }
    else{
        std::cout<<"失败"<<std::endl;
    }

    return 0;
}

你可能感兴趣的:(STL中map的成员函数insert的返回值)