1 //===----------------------------------------------------------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 // <map> 10 11 // key_compare key_comp() const; 12 13 #include <map> 14 #include <cassert> 15 #include <string> 16 17 int main(int, char**) { 18 typedef std::map<int, std::string> map_type; 19 20 map_type m; 21 std::pair<map_type::iterator, bool> p1 = m.insert(map_type::value_type(1, "abc")); 22 std::pair<map_type::iterator, bool> p2 = m.insert(map_type::value_type(2, "abc")); 23 24 const map_type& cm = m; 25 26 assert(cm.key_comp()(p1.first->first, p2.first->first)); 27 assert(!cm.key_comp()(p2.first->first, p1.first->first)); 28 29 return 0; 30 } 31