Здравствуйте Эксперты. Код в приложении на 486 вызывает ошибку "Неправильная инструкция...". НО ведь я устанавливаю обработчик?! Управление должно передатся ему, надеюсь, и мессага об ошибке с завершением приложения не должна выскакивать. Что я делаю неправильно??? З.Ы. Посмотреть под отладчиком и поэксперементировать на 486 нет возможности - отладчика там нет (кроме debug:).
Здравствуйте, Илья! Лично у меня под Win2k подобный код с in работает (вместо исключения EXCEPTION_ILLEGAL_INSTRUCTION будет EXCEPTION_PRIV_INSTRUCTION): int main(int argc, char* argv[]) { bool f = false; __try { _asm in ax, 10 f = true; } __except(EXCEPTION_EXECUTE_HANDLER) {} cout << f << endl; return 0; } Обратите внимание на правильную расстановку флажков (в Вашем примере bCpuId будет всегда равен true). С уважением, Avl2k. Ответ отправлен: 08.05.2003, 13:04 Отправитель: Avl2k
Вопрос № 756
Всем привет, спасибо за ответы на предыдущие вопросы. Новый вопрос, почему при попытке перегрузить int &operator[](int , int ); Пишет, что сильно много параметров? Best regards alexneta.
Добрый день, alexneta! Да... видать зря отвечали... ;) Пишет потому, что допустим только один параметр. Удачи Ответ отправлен: 07.05.2003, 19:34 Отправитель: Yuri Gordienko Отвечает Dzik
Приветствую Вас, alexneta! Потому, что у оператора new всего один параметр! Ответ отправлен: 08.05.2003, 07:22 Отправитель: Dzik Отвечает Ramzes
Доброе время суток, alexneta! Дык оператор то должен принимать всего один параметр int operator[](int)
Ответ отправлен: 08.05.2003, 10:33 Отправитель: Ramzes Отвечает Avl2k
Добрый день, alexneta! Потому что по синтаксису C++ у оператора [] один параметр. Если нужна запись вида a[5][10], то первые скобки должны возвращать объект типа (класса), у которого тоже можно вызвать скобки, например class X { public: int* operator[](int); }; void f() { X x; int a = x[10][20]; } С уважением, Avl2k. Ответ отправлен: 08.05.2003, 10:35 Отправитель: Avl2k Отвечает xiron
Добрый день, alexneta! Ну и правильно пишет. Ты наверное хочеш выбрать елемент матрицы, mathrix[i][j]. Но тебе не удастся перегрузить оператор [][]. Нужно перегрузить [] для строки, который возвращает обьект скажем строка, и для него перегрузить [] который даст искомый елемент. Удачи Ответ отправлен: 08.05.2003, 17:03 Отправитель: xiron
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.