How to Get the Value Associated with a Key in a Map in C++ - Step by Step Examples



How to Get the Value Associated with a Key in a Map in C++ ?

Answer

To get the value associated with a key in a map in C++, you can use the operator[] or the at() method. These methods allow you to access the value directly using the key.



✐ Examples

1 Getting the Value Associated with a Key Using operator[]

We can get the value associated with a key in a map in C++ using the operator[], which returns the value associated with the specified key.

For example,

  1. We start by including the <map> and <iostream> header files, which provide the necessary functions and data structures for working with maps and input-output operations.
  2. We declare and initialize a map named myMap with some key-value pairs. In this example, the map has integer keys and string values.
  3. We use the operator[] to access the value associated with the key 2. The operator[] returns the value associated with the specified key.
  4. We store the value in a variable named value.
  5. We print the value to the console using std::cout.

C++ Program

#include <map>
#include <iostream>

int main() {
    // Declare and initialize a map
    std::map<int, std::string> myMap = {
        {1, "one"},
        {2, "two"},
        {3, "three"}
    };

    // Get the value associated with a key using operator[]
    std::string value = myMap[2];

    // Print the value
    std::cout << "The value associated with key 2 is: " << value << std::endl;

    return 0;
}

Output

The value associated with key 2 is: two

2 Getting the Value Associated with a Key Using at() Method

We can get the value associated with a key in a map in C++ using the at() method, which returns the value associated with the specified key.

For example,

  1. We start by including the <map> and <iostream> header files, which provide the necessary functions and data structures for working with maps and input-output operations.
  2. We declare and initialize a map named myMap with some key-value pairs. In this example, the map has integer keys and string values.
  3. We use the at() method to access the value associated with the key 3. The at() method returns the value associated with the specified key.
  4. We store the value in a variable named value.
  5. We print the value to the console using std::cout.

C++ Program

#include <map>
#include <iostream>

int main() {
    // Declare and initialize a map
    std::map<int, std::string> myMap = {
        {1, "one"},
        {2, "two"},
        {3, "three"}
    };

    // Get the value associated with a key using at() method
    std::string value = myMap.at(3);

    // Print the value
    std::cout << "The value associated with key 3 is: " << value << std::endl;

    return 0;
}

Output

The value associated with key 3 is: three

3 Handling Key Not Found Error Using at() Method

We can handle the case where a key is not found in a map in C++ using the at() method, which throws an exception if the key is not present.

For example,

  1. We start by including the <map>, <iostream>, and <stdexcept> header files, which provide the necessary functions and data structures for working with maps, input-output operations, and exception handling.
  2. We declare and initialize a map named myMap with some key-value pairs. In this example, the map has integer keys and string values.
  3. We use a try-catch block to handle the case where the key is not found. Inside the try block, we use the at() method to access the value associated with the key 4.
  4. If the key is not found, the at() method throws an exception, which is caught by the catch block. We print an error message to the console using std::cout.

C++ Program

#include <map>
#include <iostream>
#include <stdexcept>

int main() {
    // Declare and initialize a map
    std::map<int, std::string> myMap = {
        {1, "one"},
        {2, "two"},
        {3, "three"}
    };

    try {
        // Attempt to get the value associated with a non-existent key
        std::string value = myMap.at(4);
        std::cout << "The value associated with key 4 is: " << value << std::endl;
    } catch (const std::out_of_range& e) {
        // Handle the case where the key is not found
        std::cout << "Key 4 not found in the map." << std::endl;
    }

    return 0;
}

Output

Key 4 not found in the map.

Summary

In this tutorial, we learned How to Get the Value Associated with a Key in a Map in C++ language with well detailed examples.




More C++ Maps Tutorials

  1. How to create an Empty Map in C++ ?
  2. How to create a Map with Initial Key-Value Pairs in C++ ?
  3. How to Print a Map in C++ ?
  4. How to Add a Key-Value Pair to a Map in C++ ?
  5. How to Set a Default Value for a Key in a Map in C++ ?
  6. How to Update the Value for a Key in a Map in C++ ?
  7. How to Check if a Map is Empty in C++ ?
  8. How to Check if a Key Exists in a Map in C++ ?
  9. How to Check if a Value Exists in a Map in C++ ?
  10. How to Get the Value Associated with a Key in a Map in C++ ?
  11. How to Remove a Key-Value Pair from a Map in C++ ?
  12. How to Remove Key-Value Pairs from a Map Based on Values in C++ ?
  13. How to Clear All Key-Value Pairs from a Map in C++ ?
  14. How to Iterate Over Keys in a Map in C++ ?
  15. How to Iterate Over Values in a Map in C++ ?
  16. How to Iterate Over Entries (Key-Value Pairs) in a Map in C++ ?
  17. How to Get the Size (Number of Key-Value Pairs) of a Map in C++ ?
  18. How to Convert a Map to an Array of Keys in C++ ?
  19. How to Convert a Map to an Array of Values in C++ ?
  20. How to Convert a Map to an Array of Key-Value Pairs in C++ ?
  21. How to Merge Two Maps in C++ ?
  22. How to Copy a Map in C++ ?
  23. How to Check if Two Maps are Equal in C++ ?
  24. How to Sort a Map by Keys in C++ ?
  25. How to Sort a Map by Values in C++ ?
  26. How to Filter a Map Based on Keys in C++ ?
  27. How to Filter a Map Based on Values in C++ ?
  28. How to Reduce Values in a Map to a Single Value in C++ ?
  29. How to Convert an Array of Key-Value Pairs to a Map in C++ ?
  30. How to Convert a Map to a JSON String in C++ ?
  31. How to Convert a JSON String to a Map in C++ ?
  32. How to Swap Keys and Values in a Map in C++ ?
  33. How to Create a Map of Maps in C++ ?
  34. How to Iterate Over a Map of Maps in C++ ?