gpt4 book ai didi

C++输出二维 vector

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:50:35 27 4
gpt4 key购买 nike

我写了两个 for 循环,希望看看它们是否会输出名为 data 的 vector 中的每个值,但它不起作用。有一个与 data[i].at(j) 有关的错误,我不太明白。

vector<int> data; //it is filled with some integers with x rows and y columns

for ( int i = 0; i < data.size(); ++i) {
for ( int j = 0; j < col; ++j ) {
cout << data[i].at(j) << ' ';
}

cout << endl;
}

我也试过这个方法,但也不管用。 data.at(i).at(j) 有错误。

for ( int i = 0; i < data.size(); ++i ) {
for ( int j = 0; j < col; ++j ) {
cout << data.at(i).at(j) << ' ';
cout << endl;
}

这些中的任何一个都可以通过较小的修复工作,还是根本不起作用?

最佳答案

关注这里:

data[i].at(j) 

当您在位置 i 索引您的 vector 时,您会得到它的第 i 个数。那是 int 类型。

然后您在 int 上请求一个名为 at() 的方法。这不是由原始类型 int 提供的。

如果你想用一维模拟一个二维 vector ,那么你可以这样做:

for (int i = 0; i < data.size(); ++i)
{
for (int j = 0; j < col; ++j)
cout << data[i + j * col] << ' ';
cout << endl;
}

关于C++输出二维 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46679495/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com