gpt4 book ai didi

c++ - 修改vector的元素(按值,按引用)函数C++

转载 作者:IT老高 更新时间:2023-10-28 22:21:23 33 4
gpt4 key购买 nike

我有一个函数,我必须修改 vector 的值。在 C++ 中返回 vector 是一个好习惯吗?

功能一:

vector<string> RemoveSpecialCharacters(vector<string> words)
{
for (vector<string>::iterator it=words.begin(); it!=words.end(); )
{
if(CheckLength(*it) == false)
{
it = words.erase(it);
}
else{
++it;
}
}//end for

return words;
}

功能2:

void RemoveSpecialCharacters(vector<string> & words)
{
for (vector<string>::iterator it=words.begin(); it!=words.end(); )
{
if(CheckLength(*it) == false)
{
it = words.erase(it);
}
else{
++it;
}
}//end for
}

最佳答案

您的两个函数用于两个不同的目的。

  • 功能1:作为remove_copy工作。它不会修改现有的容器;它会复制并修改它。

  • 功能2:作为remove。它将修改现有的容器。

关于c++ - 修改vector的元素(按值,按引用)函数C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19678437/

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