Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Illegal use of pointer


Автор: Volfs 29.5.2012, 19:15
Добрый день!
Пытаюсь в одном из методов класса по указателю this вызвать перегруженный метод в функциональной форме (this->operator ++()).
Компилятор сообщает:
[BCC32 Error] TDeque.cpp(42): E2087 Illegal use of pointer
Где я не прав?

Код:
Код

class iterator {
//.......................
        iterator& operator++() {
            if ( (the_elem != 0) && (the_elem->next != 0) ) the_elem = the_elem->next;
            return *this;
        }
        iterator& operator[](const int& ind) {
            if ( (ind >= 0) && (ind <= *count) ) {
                if ( ind < int(count/2) ) for (int i = 0; i < ind; this->operator ++()); 
            }
            return *this;
        }
};


Добавлено через 4 минуты и 31 секунду
Цитата(Volfs @  29.5.2012,  19:15 Найти цитируемый пост)
 if ( ind < int(count/2) ) 


Нашел ошибку, указатель не разыменовал  smile 

Код

if ( ind < int(*count/2) )

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)