Как SFML использует std :: во всех своих библиотеках, будучи безопасным для DLL? - PullRequest
1 голос
/ 11 января 2011

Я продолжаю читать, что если DLL связана с другой версией среды выполнения, которая не соответствует другим модулям, использующим ее, и она возвращает объект std :: object или один из его классов имеет аргументы std :: arguments, это вызовет программа для сбоя. Как SFML делает это тогда? Я не вижу никаких предупреждений об этом нигде, и они интенсивно используют std :: ..

http://www.sfml -dev.org

Спасибо

1 Ответ

1 голос
/ 11 января 2011

Теоретически, нет никаких гарантий взаимодействия между различными средами выполнения C ++, даже между различными выпусками одного и того же компилятора. И кажется, что SFML выпускает отдельные загрузки библиотек Windows для VC ++ 2005, VC ++ 2008 и MinGW.

Но сказать, что смешивание разных сред выполнения будет причиной сбоя, является преувеличением. Если бы производители компиляторов не поддерживали какой-либо разумный уровень взаимодействия (например, между небольшими исправлениями и основными выпусками компилятора), их клиенты могли бы пойти на попятную, или, по крайней мере, если бы у них был какой-то смысл!

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