c++ static map
时间: 2023-08-05 15:04:37 浏览: 204
在C++中,静态映射(static map)通常是指使用std::map容器来存储键值对,并将其声明为静态变量。std::map是C++标准库中的关联容器,它按照键的有序性存储数据,并提供快速的查找和插入操作。
下面是一个示例代码,展示了如何创建和使用静态映射:
```cpp
#include <iostream>
#include <map>
class MyClass {
public:
static std::map<int, std::string> myMap;
static void initializeMap() {
myMap[1] = "One";
myMap[2] = "Two";
myMap[3] = "Three";
// 添加更多键值对...
}
};
std::map<int, std::string> MyClass::myMap; // 静态映射的定义
int main() {
MyClass::initializeMap();
// 使用静态映射
std::cout << MyClass::myMap[1] << std::endl; // 输出 "One"
std::cout << MyClass::myMap[2] << std::endl; // 输出 "Two"
std::cout << MyClass::myMap[3] << std::endl; // 输出 "Three"
return 0;
}
```
在上面的示例中,我们在MyClass类中声明了一个名为myMap的静态变量,它是一个std::map<int, std::string>类型的映射。然后,我们在initializeMap()函数中初始化了这个映射,将一些键值对添加到其中。在main函数中,我们通过MyClass::myMap来访问和使用这个静态映射。
请注意,静态映射是在程序运行期间一直存在的,无论是否创建了类的实例。因此,您可以在任何时候都可以访问和使用它。