![]() |
|
![]() ![]() ![]() |
|
Greiv |
|
||||||||||
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 4.5.2009 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Всем привет.
В общем проблема в следующем. Просто вводя код калькулятора из книги выше упомянутого автора с небольшими своими изменениями(не чего серьёзного), код запускается но не считает и вообще работает как то коряво в общем, кнопок не слушает вообще, замучился разбирать косяк найти не могу может знатоки помогут вот коды исходных файлов моих. main.cpp
calculatorform.h
calculatorform.cpp
И ещё пожалуйста объясните 2 момента для чего здесь стоит звёздочка?
И для чего нужно вот это
|
||||||||||
|
|||||||||||
RedDigger |
|
||||||||||||||||
![]() Программист Профиль Группа: Участник Сообщений: 26 Регистрация: 24.9.2010 Где: Москва Репутация: нет Всего: 1 |
Проблема у тебя в невнимательности... В функции void slotButtonClicked(); в самом конце где вносится первое значения для подсчета - значение вносится только тогда когда ты нажимаешь на какойлибо знак арифметического действия. Но при это знак не сохраняешь.. в результате у тебя к подсчету приходит только два числа без знака на что та не знает что делать.. для решения следует применить следующее
Ответы на вопросы тобою заданные - 1.
Эта "звездочка" или "спецификатор памяти" если точнее требуется для того чтобы функция возвращала указатель на объект класса QPushButton в случае если не указывать "звездочку" то объект получается статическим. Память под него выделяется при старте программы а не при вызове дерективы new. Создание динамического объекта
Их можно использовать как массивы. 2.
В данном случае ты создаешь статический объект класса calculatorform. Нужно это чтобы твой калькулятор работал.. если данной строки не будет то никогда не отработает конструктор а следовательно все что будет в блоке calculatorform::calculatorform() - можно забыть... в общем у тебя ничего не будет.. PS RTFM - Укзатели (в примере терминология страдает но основные понятия открыты великолепно.) |
||||||||||||||||
|
|||||||||||||||||
Greiv |
|
|||
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 4.5.2009 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Да спасибо большое за такой исчерпывающий ответ, но так как я только начинаю программировать то естественно я работаю с книгой, и вот в чём дело в книге последний обзац этого кода где у меня ошибка выглядит именно так
без этого стека который вы мне указали. Брутальная опечатка, видимо редакция одна из первых. |
|||
|
||||
RedDigger |
|
||||
![]() Программист Профиль Группа: Участник Сообщений: 26 Регистрация: 24.9.2010 Где: Москва Репутация: нет Всего: 1 |
Возможно опечатка... Возможно народ специально не поставил данную строку туда, чтоб читатель сам попытался ответить.. В любом случае мы этого думаю не узнаем. Рад что смог помочь. Обращайся если что |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |