Использование Qt STL между приложениями, созданными с помощью QtCreator и Visual Studio - PullRequest
0 голосов
/ 06 декабря 2011

Я работаю над программным проектом, в котором интерфейс разработан с помощью Qt Creator. Это приложение ссылается на некоторые динамические библиотеки, встроенные в Visual Studio.

Я собрал Qt из исходного кода в Visual Studio, но поскольку библиотеки в Qt Creator создаются с использованием MinGW, существует ли опасность передачи объектов Qt STL между приложением и DLL, с учетом того факта, что они оба построены с разными компиляторами?

Единственное, о чем я могу думать, это конфликты между отладкой и выпуском.

Дополнительная информация: единственные классы Qt, которые будут использовать DLL, - это QString, QVector и QMap.

EDIT: PS: как насчет стандартного stl? Есть ли какие-нибудь проблемы со смешиванием двоичных файлов между MinGW и MSVC?

1 Ответ

4 голосов
/ 06 декабря 2011

Вы не можете.Нет стандартизированного C ++ ABI , и ABI GCC и MSVC, безусловно, несовместимы - ABI даже не совместимы между различными версиями MSVC.Создайте всю свою библиотеку с помощью компилятора, который вы хотите использовать.

...