但是我可以用哈希图中的大小和值初始化该向量吗(unordered_map)?
but can I initialize that vector with a size and value in a hashmap (unordered_map)?
因此,我可以非常轻松地将哈希图从 int 初始化为 vector...
但是我可以用一个大小和默认值初始化那个向量吗??
例如:vector<int> a(2,0)
<--大小和值已初始化....
unordered_map<int, vector<int>>
有什么东西吗
您可以像这样在向量周围创建一个包装器:
struct DefaultSizedVector{
DefaultSizedVector() : data{2, 0} {}
vector<int> data;
};
然后地图类型将是 unordered_map<int, DefaultSizedVector>
那么然后(通过访问 .data
成员)它就像一个向量一样,除了有一个默认大小。
您也可以让 DefaultSizedVector
直接从 vector<int>
继承,这样它的行为就完全像一个向量,但是您必须注意 DefaultSizedVector
的用法是由于 here.
指出的原因,相当受限
因此,我可以非常轻松地将哈希图从 int 初始化为 vector...
但是我可以用一个大小和默认值初始化那个向量吗??
例如:vector<int> a(2,0)
<--大小和值已初始化....
unordered_map<int, vector<int>>
您可以像这样在向量周围创建一个包装器:
struct DefaultSizedVector{
DefaultSizedVector() : data{2, 0} {}
vector<int> data;
};
然后地图类型将是 unordered_map<int, DefaultSizedVector>
那么然后(通过访问 .data
成员)它就像一个向量一样,除了有一个默认大小。
您也可以让 DefaultSizedVector
直接从 vector<int>
继承,这样它的行为就完全像一个向量,但是您必须注意 DefaultSizedVector
的用法是由于 here.