Здравствуйте. Я новичок в C++. На работе ковыряюсь в чужом проекте. В файле есть два метода. В одном из них используется класс. Я хочу использовать этот класс в другом методе, на что компилятор выдает error C2065: undeclared identifier. Вот схематичное описание ситуации:
temlate<class Base>
class CLASS
{
void visit()
{
// bla bla bla
Device d; // 'Device' : undeclared identifier
//bla bla bla
}
void Draw()
{
// bla bla bla
Device d; // It's OK
//bla bla bla
}
};
Не могу понять почему это так. Пробовал менять методы местами, но ошибка остается, причем именно на ту же самую строку (в методе visit). Подскажите пожалуйста как это исправить. Заранее спасибо!
UPD:
Если закомментировать использование Device в методе visit, то все отлично работает (проект рабочий, я его просто допиливаю):
class CLASS
{
void visit()
{
// bla bla bla
// Device d; // now it's OK
//bla bla bla
}
void Draw()
{
// bla bla bla
Device d; // It's OK
//bla bla bla
}
};