std::for_each(m_Module.begin(), m_Module.end(), DeleteWindowObject<CVMEModuleWidget*>);
template <typename TYPE>
static void DeleteWindowObject (TYPE p)
{
p->DestroyWindow();
delete p;
}
template <typename TYPE>
static void DeletePointer (TYPE p)
{
delete p;
}
template <typename TYPE>
static void DeleteArrayPointer (TYPE p)
{
delete []p;
}
template <typename TYPE>
static void delete_pointer_of_std_pair_second (TYPE p)
{
delete p.second;
}