pair,make

    技术2022-05-20  53

    pair  vs  make_pair 02make_pair constructs a pair object. 03template<class T1, class T2> 04pair<T1, T2> make_pair(T1 x, T2 y) 05{ 06    return pair<T1, T2>(x, y); 07} 08   09eg:  std::pair<std::string, double>("sn001", 12.5); 10       std::make_pair("sn001", 12.5); 11       两者效果一样。 12倘若:std::pair<std::string, float>("sn002", 12.6);   // 12.6's datatype is float 13        std::make_pair("sn002",12.6);  // 12.6's datatype is double 14使用: 15        std::pair<std::string, double> m_pairA; 16        m_pairA = std::make_pair("sn001", 12.5); 17        std::cout<<m_pairA.first<<"  "<<m_pairA.second<<std::endl; 18结合map的简单使用: 19        std::pair<std::string, double> m_pairA; 20        m_pairA = std::make_pair("sn001", 12.5); 21        //std::cout<<m_pairA.first<<"  "<<m_pairA.second<<std::endl; 22        std::map<std::string, double> m_mapA; 23        m_mapA.insert(m_pairA); 24        std::map<std::string, double>::iterator iter = m_mapA.begin(); 25        std::cout<<iter->first<<"  "<<iter->second<<std::endl; 26小结: 27        make_pair创建的是一个pair对象。使用都很方便,针对成对出现的数据,如书的ISBN对应一个书名。 28        pair是单个数据对的操作,pair是一struct类型,有两个成员变量,通过first,second来访问,用的是“.”访问。 29        map是一个关联容器,里面存放的是键值对,容器中每一元素都是pair类型,通过map的insert()方法来插入元素(pair类型)。

    最新回复(0)