Тип решения, основанный на существовании вложенного typedef

Мне нужно определить структуру шаблона так, чтобы:

element<T>::type

имеет тип:

T::element_type 

если T содержит (public) typedef с именем element_type, в противном случае (если он не содержит такой typedef)

element<T>::type

имеет тип

T::value_type 

если T изменчив и имеет тип

const T::value_type

если Т является постоянным.

Я действительно борюсь с этим, любое предложение очень ценится! :)

Заранее большое спасибо за помощь!

Ответы на вопрос(2)

Ваш ответ на вопрос