Dll and stl and static data (oh mine!)

OK ..... I read all the questions on related issues and several MSDN articles, as well as money on googling.

What current "current state" answers this question:

I am using unmanaged code VS 2008, C ++. I have a solution file with quite a lot of dlls and quite a lot of exe. While I have full control over the build environment, so that all parts and parts are built with the same flags and use the same instances of the runtime, and no one has a statically linked CRT library, is it okay for me to pass STL objects?

It seems like it should be fine, but depending on what article you read, there is a lot of Fear, Uncertainty and Doubt.

I know there are all kinds of problems with templates that produce static data behind the scenes (each dll will get its own copy, which will lead to heartache), but what about the regular old STL?

+5
source share
3 answers

We successfully pass STL objects in our application, which are composed of dozens of DLLs. To ensure that it works, one of our automated tests that runs in each build is checking the settings for all projects. If you add a new project and configure it incorrectly or disrupt the configuration of an existing project, the assembly will fail.

, , . , , .

#defines

_WIN32_WINNT
STRICT
_WIN32_IE
NDEBUG
_DEBUG
_SECURE_SCL

DebugInformationFormat
WholeProgramOptimization
RuntimeLibrary
+1

, , STL. , , , , .

+6

stl dll ( ). .

, , , dll , dll . , , . Debug ( ), - . , , , .

, stl- api. (VC6) OCI (Oracles C api) OCCI (Oracles ++ api), Microsoft STL, stlport. , stl, .

0

All Articles