Когда я пытаюсь скомпилировать следующий код ...
#include <vector>
template <class T> void DoNothing()
{
std::vector<T>::iterator it;
}
int main(int argc, char**argv)
{
return 0;
}
г ++ говорит:
test.cpp: 5: ошибка: ожидается `; ' до
«Это»
И я не понимаю, почему это проблема. Если я заменю его на std::vector<int>::iterator
, скажем, он работает нормально, как и ожидалось.
Как видите, я не создаю экземпляр этой функции, поэтому у g ++ должна быть проблема с самим определением шаблона, но я не вижу, насколько он недействителен.
Спасибо за любой совет о том, что происходит.
NB. На самом деле я пытаюсь написать шаблонный класс и у меня проблемы с картой, а не с вектором, но это самый простой тест для моей проблемы.