QT имеет интерфейс C?

find . -name "*.ear" -exec ls -l {} \;
59
задан Ree 13 November 2009 в 10:53
поделиться

6 ответов

Краткий ответ: нет

Если вам нужен полный набор инструментов GUI для C, вы можете использовать GTK +.

Чтобы использовать Qt, вы должны иметь компилятор C ++. Но это не означает, что ваша «логика приложения» не может быть написана на C, скомпилирована с помощью компилятора C и тщательно связана с частью C ++ (GUI с Qt). Эта логика приложения может быть общей, с возможностью связывания с другими исполняемыми файлами (чистый C, смешанный C / C ++ и т. Д.). Все зависит от того, что вам нужно.

Qt отлично подходит для C ++, и это хороший повод принять решение используя C ++ для конкретного проекта, даже если вы все еще хотите сохранить части на C.

62
ответ дан 24 November 2019 в 18:17
поделиться

No. Qt - это C ++. Но вы можете просто написать код в стиле C везде, который не взаимодействует / не создает элементы графического интерфейса, и скомпилировать все это с помощью выбранного компилятора C ++.

18
ответ дан 24 November 2019 в 18:17
поделиться

Раньше существовала привязка QtC, но поиск по ней обнаруживает эту ветку :

От Ричарда Дейла:

Я использовал для поддержки привязок C, которые использовались привязками Objective-C и Qt #. Но библиотека Smoke намного лучше, хотя это не привязка к C, и я Отменены привязки QtC, чтобы вместо этого использовать дым.

Smoke здесь . Мне нигде не удалось найти четкую ссылку на привязки QtC, хотя я помню, что слышал о них.

14
ответ дан 24 November 2019 в 18:17
поделиться

Не думаю. Qt всегда описывается как «библиотека классов», и для ее сборки требуются компиляторы C ++. Вы можете попытаться написать / найти DLL / интерфейс, который будет обтекать QT и предоставлять API для уровня C.

4
ответ дан 24 November 2019 в 18:17
поделиться

Вы всегда можете использовать компилятор C ++, который просто переводит C ++ в C, затем вызывает искаженные имена, которые он генерирует, и т. Д .: -)

3
ответ дан 24 November 2019 в 18:17
поделиться

К сожалению, нет, но вы можете сформировать свою программу как набор библиотек, реализующих вашу бизнес-логику, и написать их на C, тогда вы можете использовать немного C ++ для связывания того, что вы написали как библиотеку, с графическим интерфейсом пользователя с использованием QT.

Это хороший подход еще и потому, что позже вы сможете повторно использовать свою библиотеку и реализовать множество других интерфейсов с другими инструментами или языками!

22
ответ дан 24 November 2019 в 18:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: