Есть класса А.
Внутри него есть структура, которая содержит поле с шаблонным типом.
В функции f() мне нужно к примеру получить итератор (в моем случае для поиска).
Но почему я не могу объявить итератор?
Получается в таком виде я вообще не могу работать с итераторами?
template<typename T>
class A {
public:
A();
~A();
void f(void* o);
typedef struct {
T* t;
int i;
} t_t;
std::vector<t_t> v;
};
template <typename T>
A<T>::A() {}
template <typename T>
A<T>::~A() {}
template <typename T>
void A<T>::f(void* o) {
// объявление итератора не работает
// std::vector<t_t>::iterator it = v.begin();
static_cast<T*>(o)->push();
}