小编Ada*_*son的帖子

如何统一初始化unique_ptr的映射?

我有这个代码来初始化map到unique_ptr.

auto a = unique_ptr<A>(new A());
map<int, unique_ptr<A>> m;
m[1] = move(a);
Run Code Online (Sandbox Code Playgroud)

我可以使用统一初始化吗?我试过了

map<int, unique_ptr<A>> m {{1, unique_ptr<A>(new A())}};    
Run Code Online (Sandbox Code Playgroud)

但是我收到了一个错误.

错误消息的某些部分是

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;

   ^
Run Code Online (Sandbox Code Playgroud)

c++ smart-pointers map uniform-initialization c++11

7
推荐指数
1
解决办法
1361
查看次数

如何根据形状字段值为D3强制有向图添加两种不同的形状?

我是D3的新手.我正在使用力导向图.我想在节点的位置添加两种不同类型的形状.

我的json如下:

{
  "nodes":[
    {"name":"00:00:00:00:00:00:00:01","group":0,"shape":1},
    {"name":"00:00:00:00:00:00:00:02","group":1,"shape":1},
    {"name":"00:00:00:00:00:00:00:03","group":2,"shape":1},
    {"name":"00:00:00:00:00:00:00:11","group":0,"shape":0},
    {"name":"00:00:00:00:00:00:00:21","group":1,"shape":0},
    {"name":"00:00:00:00:00:00:00:31","group":2,"shape":0},
    {"name":"00:00:00:00:00:00:00:32","group":2,"shape":0},
    {"name":"00:00:00:00:00:00:00:12","group":0,"shape":0},
    {"name":"00:00:00:00:00:00:00:22","group":1,"shape":0}
  ],
  "links":[
    { "source":  0,  "target":  0,  "value":  5 },
    { "source":  1,  "target":  1,  "value":  5 },
    { "source":  2,  "target":  2,  "value":  5 },
    { "source":  3,  "target":  0,  "value":  5 },
    { "source":  4,  "target":  1,  "value":  5 },
    { "source":  5,  "target":  2,  "value":  5 },
    { "source":  6,  "target":  2,  "value":  5 },
    { "source":  7,  "target":  0,  "value":  5 },
    { …
Run Code Online (Sandbox Code Playgroud)

d3.js force-layout

5
推荐指数
1
解决办法
5800
查看次数