C++ 列表消除差异

C++ 列表消除差异,c++,std,C++,Std,我正试图使用list std和下面的行来声明邻接列表 list<Node> *adjList; list*adjList; 在构造函数中,我发现这两个初始化是可能的 adjList = new list<Node>[V]; adjList = new list<Node>(V); adjList=新列表[V]; adjList=新列表(V); 其中V是图中顶点的总数 我的问题是 [V]和(V)新列表[V] 创建一个数组,其中包含V个list对象,这些

我正试图使用list std和下面的行来声明邻接列表

list<Node> *adjList;
list*adjList;
在构造函数中,我发现这两个初始化是可能的

adjList = new list<Node>[V];

adjList = new list<Node>(V);
adjList=新列表[V];
adjList=新列表(V);
其中V是图中顶点的总数

我的问题是

[V]
(V)

新列表[V]

创建一个数组,其中包含
V
list
对象,这些对象最初都是空的

新列表(V)


创建一个包含
V
节点
元素的
列表
对象

[V]调用新的[]运算符并用于数组。(五) 调用构造函数。旁注:指向
列表
或任何其他库容器的指针通常是个坏主意。库容器的存在是为了为您管理资源,通过动态分配一个库容器,您将承担一些责任。由于资源管理是编程中最棘手的问题之一,因此,让专家为您做的越多越好。首选
列表调整列表
,但如果您发现必须动态分配的情况,请使用@Emrah Sariboz来保护分配。@Emrah Sariboz我个人没有投反对票,但官方的stackoverflow理由是“这个问题没有显示任何研究成果”Downviote rational:没有研究成果。这在早期的任何非欺诈性的编程文本中都有涉及。老实说,我尝试过搜索。我就是找不到这个问题的正确答案