Push_back 奇数
Push_back odd numbers
因此,该函数的目标是将奇数添加到 1 和提供的整数(含)之间的数组。这似乎是一项简单的任务,但是,我似乎无法成功地将整数添加到实际数组中。
void populate(std::vector<int> ary, int a)
{
for (int i = 1; i <= a; i++)
{
if (i % 2 != 0)
{
ary.push_back(i);
}
}
}
函数本身不是常量,所以它不应该成功地向数组添加值吗?
编辑:这一切都是在主程序中完成的,所以就在这里。
int main()
{
std::vector<int> loli(100);
populate(loli, 31);
for (int value : loli)
{
std::cout << value << " ";
system("pause");
}
}
编辑 2:我尝试添加一个 return 语句,但是我得到的结果仍然为零。
std::vector<int> populate(std::vector<int> ary, int a)
{
for (int i = 1; i <= a; i++)
{
if (i % 2 != 0)
{
ary.push_back(i);
}
}
return ary;
}
int main()
{
std::vector<int> loli(100);
for (int value : populate(loli, 31))
{
std::cout << value << " ";
system("pause");
}
}
您的函数应该 return for 循环之后的最终数组,或者您应该将数组作为指向函数的指针传递。
因此,该函数的目标是将奇数添加到 1 和提供的整数(含)之间的数组。这似乎是一项简单的任务,但是,我似乎无法成功地将整数添加到实际数组中。
void populate(std::vector<int> ary, int a)
{
for (int i = 1; i <= a; i++)
{
if (i % 2 != 0)
{
ary.push_back(i);
}
}
}
函数本身不是常量,所以它不应该成功地向数组添加值吗?
编辑:这一切都是在主程序中完成的,所以就在这里。
int main()
{
std::vector<int> loli(100);
populate(loli, 31);
for (int value : loli)
{
std::cout << value << " ";
system("pause");
}
}
编辑 2:我尝试添加一个 return 语句,但是我得到的结果仍然为零。
std::vector<int> populate(std::vector<int> ary, int a)
{
for (int i = 1; i <= a; i++)
{
if (i % 2 != 0)
{
ary.push_back(i);
}
}
return ary;
}
int main()
{
std::vector<int> loli(100);
for (int value : populate(loli, 31))
{
std::cout << value << " ";
system("pause");
}
}
您的函数应该 return for 循环之后的最终数组,或者您应该将数组作为指向函数的指针传递。