Смешивание Qt и Boost - PullRequest
       11

Смешивание Qt и Boost

66 голосов
/ 11 декабря 2008

Я смотрю на запуск проекта в C ++ с использованием фреймворка Qt 4 (требуется кроссплатформенный графический интерфейс). Я слышал замечательные вещи о библиотеках Boost от друзей и в Интернете. Я начал читать оба, и хотел задать краткий вопрос, прежде чем я стал слишком глубоким: эти две "системы" разработки являются взаимоисключающими?

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

Имеет ли смысл использовать их обоих в одном проекте?

Ответы [ 6 ]

54 голосов
/ 11 декабря 2008

Да, это имеет смысл. Я бы предпочел использовать функции boost / stdlib, где это возможно, а не их альтернативы Qt

Упрощает перенос кода на следующую инфраструктуру.
Это облегчает освоение новых не-Qt программистов.
Boost обладает отличной функциональностью и постоянно получает больше.

примечание: строки в / из виджетов, вероятно, являются основным исключением - в графическом интерфейсе я бы использовал строки Qt для сохранения запутанных приведений везде.

31 голосов
/ 30 марта 2009

Эта статья сравнивает сигнальные слоты механизм в QT и Boost :: Signal очень прилично. Это необходимо прочитать тем, кому немного интересен этот микс.

17 голосов
/ 03 марта 2009

Тем более, что вы переходите на кроссплатформенность, у вас должна быть хорошо многоуровневая архитектура с максимально удаленной бизнес-логикой и доступом к данным из графического интерфейса. В этом случае имеет смысл использовать Boost при написании серверной части вашего приложения и переходить только к Qt для внешнего интерфейса с обязательной кучей приведений, сделанных в связке.

Если ваш «движок» отделен от вашего выбора графического интерфейса, вы сможете поменять Qt на что-то другое в будущем (возможно, на нативные библиотеки) с минимальными усилиями.

7 голосов
/ 12 декабря 2008

Мы (Last.fm) используем их вместе, хотя мы только начали это делать, и у нас пока нет большого опыта. Пока все хорошо, хотя:)

3 голосов
/ 18 января 2011

Учтите, что Boost Signals2 доступны и являются поточно-ориентированными.

3 голосов
/ 04 марта 2009

Возможны проблемы с использованием Boost.Signals наряду с QT. Они задокументированы в FAQ по Boost.Signals .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...