Не полностью ответ на ваш вопрос, но только часть его :) Кроме того, это googlable.
Думаю, что если вы разрабатываете на C ++, вы должны знать, что означает Makefile
. Также я думаю, что файл .loc
- это, как правило, файл с локализованными строками / содержимым.
альтернативный текст http://thelins.se/learnqt/wp-content/uploads/qt-buildsystem.png
Сравнивая систему сборки C ++ с системой сборки Qt, вы можете видеть, что система сборки C ++ (серые прямоугольники) осталась неизменной. Мы все еще строим код C ++ здесь. Тем не менее, мы добавляем больше источников и заголовков. Здесь задействованы три генератора кода:
Компилятор мета-объекта (moc на иллюстрации) - компилятор мета-объекта берет все классы, начиная с макроса Q_OBJECT, и генерирует исходный файл moc _ *. Cpp C ++. Этот файл содержит информацию о перемещаемом классе, такую как имя класса, дерево наследования и т. Д., А также реализацию сигналов. Это означает, что когда вы излучаете сигнал, вы фактически вызываете функцию, сгенерированную moc.
Компилятор пользовательского интерфейса (uic на иллюстрации) - Компилятор пользовательского интерфейса берет дизайны из Designer и создает файлы заголовков. Эти заголовочные файлы затем, как обычно, включаются в исходные файлы, что позволяет вызвать setupUi для создания дизайна пользовательского интерфейса.
Компилятор ресурсов Qt (на иллюстрации rcc) - Компилятор ресурсов - это то, о чем мы еще не говорили. Это позволяет встраивать изображения, текстовые файлы и т. Д. В ваш исполняемый файл, но при этом обращаться к ним как к файлам. Мы рассмотрим это позже, я просто хочу включить его в эту картинку, где он принадлежит.
Я надеюсь, что эта иллюстрация проясняет, что на самом деле делает Qt, чтобы добавлять новые красивые ключевые слова в C ++. Если вам интересно - не стесняйтесь читать некоторые из сгенерированных файлов. Просто не изменяйте их - они обновляются каждый раз, когда вы создаете свое приложение.
Если вы используете QtCreator, файлы moc генерируются в подкаталогах debug и release каталога вашего проекта. Файлы uic хранятся в корне каталога проекта. Файлы rcc обычно скучны, но я уверен, что вы можете найти их где-нибудь в иерархии каталогов вашего проекта.
Редактировать: Вам не нужно включать эти файлы в ваш SVN. Это почти то же дерьмо, что и фиксация .ncb
, .pdb
и других временных файлов. Каждый раз, когда вы что-то изменяете в своем приложении Qt, эти временные файлы восстанавливаются как обновление ваших изменений, поэтому нет смысла фиксировать их в SVN.