"Delete" vs. "Remove"
"Delete" vs. "Remove"
我在我的容器类中实现一个方法,从数组中删除/删除一个值。例如:
// | 532 | 422 | 134 | 762 |
// | 0 | 1 | 2 | 3 |
MyObject.Remove(1); // Or MyObject.Delete(1);
// | 532 | 134 | 762 |
// | 0 | 1 | 2 |
哪个词更常用来形容这类事情?
标准库容器使用"erase"。"Delete"可能与删除内存分配混淆。名称中带有"remove"的标准库算法实际上不会改变容器的大小(参见http://en.wikipedia.org/wiki/Erase-remove_idiom)。
相关文章:
- 使用函数"remove"删除重复元素
- 运算符C++ "delete []"仅删除 2 个前值
- 链表的泛型函数remove()与成员函数remove)
- g++用户定义的动态链接库上的全局new和delete运算符
- Qt:remove() 和 rmdir() 有什么区别
- 为什么"delete"关键字不删除节点?
- "delete"在 C++ 中实际上做了什么?
- 析构函数和'delete'之间的区别
- 如何知道何时调用删除以及何时调用 delete[] C++?
- 在对象指针上调用 Delete 是否会递归删除其动态分配的成员
- 体系结构x86_64的未定义符号:std:terminate(),typeinfo,运算符delete[],运算符new
- remove(str.begin(), str.end(), );无法正常工作(我正在使用视觉工作室 2012)
- 析构函数中的"delete this"
- 为什么数组大小信息可用于"sizeof"运算符和 delete[] 运算符,但在将数组作为参数传递到
- 即使在使用 delete[] 后仍保留的元素
- 如果我在下面的代码片段中添加"delete[] d;",为什么我得到零?
- C++原始指针和"delete"
- 为什么 std::vector 使用 std::分配器而不是运算符 new 和 delete?
- 重载 new 和 delete 会导致 valgrind 错误
- "Delete" vs. "Remove"