#include <map>
#include <string>
#include <iostream>
struct Foo
{
static std::map<int , std::string > initMap()
{
std::map<int , std::string > m;
m[0] = "zero";
m[1] = "one";
m[2] = "two";
m[3] = "three";
m[4] = "four";
m[5] = "five";
return m;
}
static const std::map<int , std::string > myMap;
};
const std::map<int , std::string > Foo::myMap = Foo::initMap();
int main()
{
//Foo::myMap[2];
Foo::myMap.at(2);
return 0;
}
I2luY2x1ZGUgPG1hcD4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IEZvbwp7CglzdGF0aWMgc3RkOjptYXA8aW50ICwgc3RkOjpzdHJpbmcgPiBpbml0TWFwKCkKCXsKCQlzdGQ6Om1hcDxpbnQgLCBzdGQ6OnN0cmluZyA+IG07CgkJbVswXSA9ICJ6ZXJvIjsKCQltWzFdID0gIm9uZSI7CgkJbVsyXSA9ICJ0d28iOwoJCW1bM10gPSAidGhyZWUiOwoJCW1bNF0gPSAiZm91ciI7CgkJbVs1XSA9ICJmaXZlIjsKCQlyZXR1cm4gbTsKCX0KCglzdGF0aWMgY29uc3Qgc3RkOjptYXA8aW50ICwgc3RkOjpzdHJpbmcgPiBteU1hcDsKfTsKCmNvbnN0IHN0ZDo6bWFwPGludCAsIHN0ZDo6c3RyaW5nID4gRm9vOjpteU1hcCA9IEZvbzo6aW5pdE1hcCgpOwoKaW50IG1haW4oKQp7CgkvL0Zvbzo6bXlNYXBbMl07CglGb286Om15TWFwLmF0KDIpOwoJcmV0dXJuIDA7Cn0=