Обработка немного разных структур одной функцией в C++
template метод? Или унаследовать эти две структуры от общего предка?
Создай отдельную функцию foo для работы с elements [5]. Потом создай две функции для работы  с разными структурами и используй в них foo.