我创建了这个模板函数来从 shared_ptr 集合中查找和删除项目
template<class T>
bool FindAndDelete(set<shared_ptr<T>>& collection, shared_ptr<T> item)
{
auto foundItem = find(collection.begin(), collection.end(), item);
if(foundItem != collection.end())
{
collection.erase(foundItem);
return true;
}
else
{
return false;
}
}
问题:我怎样才能更概括它以涵盖所有集合?(矢量、列表等...)
例如
template<class K, class T>
bool FindAndDelete(K<shared_ptr<T>>& collection, shared_ptr<T> item);
注意:我来自 C#,所以可能代码有点不对:) 请纠正我