我这里有一个2D向量,我想要给它赋一个值num。作为一个C++新手,我想看看哪个更好用:fill还是memset()。但我在设置正确的代码语法时遇到了问题,每次都会出现“段错误”。
vector<vector<int>> matrix(10, vector<int>(10000000));
int main()
{
int num;
cin >> num;
int i = 0;
for (auto &i : matrix)
{
fill(i.begin(), i.end(), num);
}
return 0;
}
int i = 0;
的声明是没有意义的,你可以完全将其删除。 - Jabberwocky1
一起使用,你将得到值为16843009的整数,参见ideone上的这个例子。 - PeterT