作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
好的,我有;
int grid_x = 5
int * grid;
grid = new int[grid_x];
*grid = 34;
cout << grid[0];
第 3 行应该创建一个包含 5 个元素的数组吗?或者用数字 5 填充第一个元素?
第4行填充了第一个元素,剩下的怎么填充?
没有第 4 行,第 5 行显示为“-842150451”。
我不明白发生了什么,我正在尝试使用用户指定的 x 和 y 值创建一个二维数组,然后用用户指定的数值一个一个地填充每个元素。我上面的代码是尝试首先使用一维数组进行尝试。
最佳答案
创建 int
动态(可调整大小)数组的默认 C++ 方法是:
std::vector<int> grid;
当标准库已经为您封装时,不要玩弄不安全的指针和手动动态分配。
要创建一个包含 5 个元素的 vector ,请执行以下操作:
std::vector<int> grid(5);
然后您可以使用 []
访问其各个元素:
grid[0] = 34;
grid[1] = 42;
可以在后面添加新元素:
// grid.size() is 5
grid.push_back(-42);
// grid.size() now returns 6
咨询reference docs查看 std::vector
上可用的所有操作。
关于c++ - 我不明白如何在 C++ 中创建和使用动态数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25626506/
我是一名优秀的程序员,十分优秀!