c++ map遍歷怎么實(shí)現(xiàn)倒序

c++
小億
212
2024-01-22 11:58:04
欄目: 編程語言

在C++中,可以通過使用rbegin()rend()函數(shù)來實(shí)現(xiàn)對(duì)map進(jìn)行倒序遍歷。rbegin()函數(shù)返回指向map中最后一個(gè)元素的逆向迭代器,而rend()函數(shù)返回指向map中的起始位置的逆向迭代器。

下面是一個(gè)示例代碼,演示了如何對(duì)map進(jìn)行倒序遍歷:

#include <iostream>
#include <map>

int main() {
    std::map<int, std::string> myMap;

    myMap[1] = "One";
    myMap[2] = "Two";
    myMap[3] = "Three";
    myMap[4] = "Four";
    myMap[5] = "Five";

    // 倒序遍歷map
    for (auto it = myMap.rbegin(); it != myMap.rend(); ++it) {
        std::cout << it->first << ": " << it->second << std::endl;
    }
    
    return 0;
}

輸出結(jié)果為:

5: Five
4: Four
3: Three
2: Two
1: One

在這個(gè)示例中,我們創(chuàng)建了一個(gè)map對(duì)象myMap,并向其中插入了一些鍵值對(duì)。然后,使用rbegin()rend()函數(shù)對(duì)map進(jìn)行倒序遍歷,并輸出每個(gè)鍵值對(duì)的鍵和值。

0