c++ - 删除数组中的一条记录

标签 c++

int i;
int Input;

cin >> Input;

 for(i = 0; i < Size ; i ++ )
  if (List[i].PersonID == Input) {

 }

我正在尝试创建一个函数,根据提供的 id 输入从数组中删除一条记录。我不知道除了这里还能做什么。删除记录后是否还需要移动数组中的值?

最佳答案

我不知道你的列表是什么类型。 但是你应该去做这样的事情:

List.RemoveAt(i--);
List.DeleteAt(i--);

i-- 将在调用函数后递减 i。

如果您使用的是标准容器,则不需要移动数组中的任何值。 如果您负责阵列,那么您确实需要改变您的值(value)观。

** 编辑

这是一个link到标准容器的介绍。如果您要管理自己的动态数组,则应考虑改用它们。

关于c++ - 删除数组中的一条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4846267/

相关文章:

c++ - 由于 undefined reference ,无法链接到 Debian 上的 Crypto++

c++ - 开始在 Visual Studio 2013 中使用 clang 3.6.0;如何解决我的 "unknown argument: -ftemplate-depth"编译器错误?

c++ - 错误 : no type named 'vector' in namespace 'std'

c++ - 做 {...} 而(假)

c++ - CMake source_group 不适用于 Qtcreator

c++ - 检查 "cin"是否为字符串

c++ - 从唯一指针数组中删除唯一指针

c++ - 使用链表实现错误队列

c++ - C/C++ 中的嵌套位域

c++ - 使用VS2012构建wxWidgets后,我可以删除lib文件夹中的哪些文件?