C++STL:矢量语法

C++ STL : Vector syntax

本文关键字:语法 C++STL      更新时间:2023-10-16

在我的一个练习问题中,我遇到了一个我不理解的向量声明。有人能帮我分解一下吗?我是STL 的新手

vector<string, vector<string> > friends;

我理解如下定义的多维向量,但我很难理解字符串的向量定义,向量<>如上所述。

vector<vector<vector<int> > > V(M, vector<vector<int> >(M,vector<int>(M,0)));

使用的STL容器应该是映射而不是向量。Vector可能是一个拼写错误。

仅为完整起见:std::vector确实允许您指定第二个模板参数,但第二个参数是向量的Allocator类型。

当您想要控制向量如何为其所保存的数据分配空间时,指定分配器可能很有用。例如,HowardHinnant写了一个简短的分配器,你可能会觉得很有趣。

但是(关键点(第二个模板参数并没有指定任何关于要存储的数据的信息,而是指定了如何分配空间来存储数据。