summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/stdalgo.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/stdalgo.h b/include/stdalgo.h
index 1ae5b8ae1..afbd763fb 100644
--- a/include/stdalgo.h
+++ b/include/stdalgo.h
@@ -84,4 +84,14 @@ namespace stdalgo
{
void operator()(classbase* item);
};
+
+ /**
+ * Deletes all elements in a container using operator delete
+ * @param cont The container containing the elements to delete
+ */
+ template <template<typename, typename> class Cont, typename T, typename Alloc>
+ inline void delete_all(const Cont<T*, Alloc>& cont)
+ {
+ std::for_each(cont.begin(), cont.end(), defaultdeleter<T>());
+ }
}