![](/img/trans.png)
[英]What is the difference between vector<int> a , vector<int> a[n] and vector<int> a(n)?
[英]Convert int[n][n] to vector<vector<int>>
我們可以使用以下方法輕松地將數組轉換為向量:
int a[n];
vector<int> b = vector(a, a + n);
我想使用矩陣,如果我想轉換怎么辦:
int a[n][n];
至
vector<vector<int>> b = ... // from a
b.size() = n 和 b[0...n-1].size() = n?
或者,我可以接受轉換的解決方案
std::vector< std::array<int, n> > a;
a.reserve(n);
vector<vector<int>> b = ... // from a
我懷疑向量的向量是您用例的容器的最佳選擇,但如果它超出您的控制范圍,這樣的事情應該可以工作:
int a[n][n];
std::vector<std::vector<int>> v;
v.reserve(n);
for (int *arr : a) {
v.emplace_back(arr, arr + n);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.