C++ SFML如何在DLL安全的情况下在其所有库中使用std::呢?

C++ SFML如何在DLL安全的情况下在其所有库中使用std::呢?,c++,dll,C++,Dll,我一直在读到,如果DLL链接到与使用它的其他模块不匹配的运行时的另一个版本,并且它返回一个std::object或它的一个类具有std::arguments,那么它将导致程序崩溃。那么SFML是如何做到的呢?我在任何地方都没有看到任何关于这方面的警告,他们大量使用std: 理论上,在不同的C++运行时,不能保证互操作性,甚至在同一编译器的不同版本之间也不能保证互操作性。而且似乎SFML发布了 分别下载VC++2005、VC++2008和MinGW的Windows库 但是说混合使用不同的运行时将

我一直在读到,如果DLL链接到与使用它的其他模块不匹配的运行时的另一个版本,并且它返回一个std::object或它的一个类具有std::arguments,那么它将导致程序崩溃。那么SFML是如何做到的呢?我在任何地方都没有看到任何关于这方面的警告,他们大量使用std:


理论上,在不同的C++运行时,不能保证互操作性,甚至在同一编译器的不同版本之间也不能保证互操作性。而且似乎SFML发布了 分别下载VC++2005、VC++2008和MinGW的Windows库


但是说混合使用不同的运行时将导致崩溃是夸张的说法。如果编译器供应商没有保持某种合理的互操作性水平(例如,在主要编译器版本的小补丁之间),他们的客户就会逃之夭夭,或者至少如果他们有点理智的话,他们会逃之夭夭 但是说混合使用不同的运行时将导致崩溃是夸张的说法。如果编译器供应商没有保持某种合理的互操作性水平(例如,在主要编译器版本的小补丁之间),他们的客户就会逃之夭夭,或者至少如果他们有点理智的话,他们会逃之夭夭