Bar*_*lin 10 c++ initialization map
我正在尝试使用以下代码初始化标题中的地图,但它一直给我标题中的错误.我正在使用C++ 11,所以这应该是可能的,对吧?
typedef std::map<NPCAnimation::ID, std::map<Direction::ID, sf::Time>> AnimationSpeedMap;
AnimationSpeedMap AnimationSpeeds = {
{NPCAnimation::WALK, {
{Direction::LEFT, sf::milliseconds(100)},
{Direction::RIGHT, sf::milliseconds(100)},
{Direction::UP, sf::milliseconds(200)},
{Direction::DOWN, sf::milliseconds(200)}
}
},
{NPCAnimation::IDLE, {
{Direction::LEFT, sf::milliseconds(600)},
{Direction::RIGHT, sf::milliseconds(600)},
{Direction::UP, sf::milliseconds(600)},
{Direction::DOWN, sf::milliseconds(600)}
}
},
{NPCAnimation::SPECIAL, {
{Direction::LEFT, sf::milliseconds(500)},
{Direction::RIGHT, sf::milliseconds(500)},
{Direction::UP, sf::milliseconds(500)},
{Direction::DOWN, sf::milliseconds(500)}
}
},
};
Run Code Online (Sandbox Code Playgroud)
提前致谢!~grambler1
我遇到过同样的问题.不幸的是,在VS2013之前不支持括号初始化和许多其他C++ 11功能.
证明:http://msdn.microsoft.com/en-us/library/vstudio/bb386063(v = vs.120).aspx