例如,我在C++中有一個動態數組,它類似於std::vector
。在實施erase
功能時,這是最好的方法嗎,還是有更快捷/更高效的更好方法?有沒有更好的方法來擦除動態數組元素?
void erase(iterator it)
{
my_array<template_argument> x;
for(iterator i = begin(); i != end(); ++i)
{
if(i == it)
{
continue;
}
x.push(*i);
}
*this = x;
}
「與std :: vector類似」,表示內存必須是連續的,對嗎?此外,「my_array」是否適用於任何數據類型,還是僅用於某個子集(例如,內置值類型,如int或double)? –