gpt4 book ai didi

c++ - 填充使用未指定维度初始化的 vector vector

转载 作者:行者123 更新时间:2023-11-30 03:18:41 25 4
gpt4 key购买 nike

我创建了一个二维 vector ,它在初始化时填充了“0”:

std::vector<std::vector<char>> grid(rows, std::vector<char>(cols, '0'));

但是我想将它初始化为一个未指定大小的空二维 vector :

std::vector<std::vector<char>>grid;

然后填充它,达到和第一条语句一样的效果。我不认为我可以使用 fill() 因为它没有 .begin().end() 我一直在玩for loops 和 push_back 都没有用,通常会得到一个 segmentation fault 错误。我觉得我正在尝试做的事情应该是可能的,如果是的话,最好的方法是什么?任何帮助将不胜感激。谢谢。

最佳答案

如果您能够使用 C++11 或更高版本,则可以使用以下重载 std::vector::resize() :

void resize( size_type count, const value_type& value );

对于您的情况,它将是:

std::vector<std::vector<char>>grid;

...

grid.resize(rows, std::vector<char>(cols, '0'));

关于c++ - 填充使用未指定维度初始化的 vector vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54500515/

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