Como uniformizar o mapa inicial de unique_ptr?

Eu tenho este código para inicializar o mapa de para o unique_ptr.

auto a = unique_ptr<A>(new A());
map<int, unique_ptr<A>> m;
m[1] = move(a);

Posso usar uniforme inicializar isso? eu tentei

map<int, unique_ptr<A>> m {{1, unique_ptr<A>(new A())}};    

Mas eu tenho um erro.

Alguma parte da mensagem de erro é

In instantiation of 'std::_Rb_tree_node<_Val>::_Rb_tree_node(_Args&& ...) [with _Args = {const std::pair<const int, std::unique_ptr<A, std::default_delete<A> > >&}; _Val = std::pair<const int, std::unique_ptr<A> >]': ... In file included from /opt/local/include/gcc48/c++/memory:81:0,
                 from smart_pointer_map.cpp:3: /opt/local/include/gcc48/c++/bits/unique_ptr.h:273:7: error: declared here
       unique_ptr(const unique_ptr&) = delete;

   ^

questionAnswers(2)

yourAnswerToTheQuestion