![]() |
|
|
![]()
|
|
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Исходная задача:
Есть QT 4.6.2. Среда разработки - Visual Studio. С сайта скачал и SDK и Visual Studio Add-in. Далее, из книжки Макса Шлее написал примерчик:
При компиляции выдает ошибку: Error 1 error PRJ0019: A tool returned an error code from "Moc'ing main.moc..." qtApp qtApp Не знаю что делать. может быть автоматической установки мало для полной настройки VS??? |
|||
|
||||
| Modul |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 17.2.2006 Репутация: нет Всего: нет |
Пример работы с сигналом и слотом.
My.h
My.cpp
main.cpp
--------------------
I'll be back ! |
||||||
|
|||||||
| alexvs11 |
|
|||
|
hell is here ![]() ![]() Профиль Группа: Участник Сообщений: 518 Регистрация: 21.8.2010 Репутация: 2 Всего: 10 |
Fighter, все классы работающие с сигналами/слотами должны быть описаны в отдельном .h файле/определены в отдельном .cpp
|
|||
|
||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
1. У меня все заработало после переустановки QT. Я скачал самую новую на данный момент QT 4.7.1 и все соответствующие ей компоненты. В результате у меня все замечательно работает и в QT Creator, VS2008 и в VS2010. 2. Разбиение на *.h и *.cpp файлы - это не обязательное условие языка С++ вообще, и библиотеки QT применительно к слотам и сигналам в частности. Разбиение на файлы сделано исключительно для удобства программиста. Всю программу можно написать и в одном файле. Все равно, когда запускается процесс сборки сначала препроцессор создает конечные файлы для компиляции, например, выполняя команды #include - именно включая содержимое хедеров в cpp. Кроме этого, в QT в частности метаобъектный компилятор обрабатывает макросы Q_OBJECT и многие другие. В конечном итоге сам компилятор компилирует как будто ты писал все в одном большом файле. Да и действительно, любую программу можно написать в одном CPP файле, просто разбираться в ней будет сложно. В общем, проблема решена, спасибо всем))) |
|||
|
||||
| alexvs11 |
|
|||
|
hell is here ![]() ![]() Профиль Группа: Участник Сообщений: 518 Регистрация: 21.8.2010 Репутация: 2 Всего: 10 |
Fighter, спасибо, все знают, что для с++ это не обязательно, но moc-компилятор может не справиться
|
|||
|
||||
| Fighter |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 810 Регистрация: 5.1.2005 Репутация: нет Всего: 2 |
Справится, он умный))))) У меня во всяком случае справляется) |
|||
|
||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |