title: Static C++ map initialization error C2552: non-aggregates cannot be initialized with initializer list
body: <p>I'm trying to initialize a map in a header with the following code, but it keeps giving me the error in the title. I'm using C++11, so this should be possible, right?</p>
  
  <pre><code>typedef std::map&lt;NPCAnimation::ID, std::map&lt;Direction::ID, sf::Time&gt;&gt; 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)}
          }
      },
  };
  </code></pre>
  
  <p>Thanks in advance!
  ~ grambler1</p>