This library is fully thread-safe and provided as both of MT (Multi-thread) and MD (Multi-thread DLL) version libraries. Projects which uses /MT option should use release and /MD should use release_md. For debugging purpose, you can use debug for /MTd and debug_md for /MDd.
For linking of debugging builds, see Debug version of the library (Windows).
Since the library uses C++ based exception handling, you should enable /EHsc option. Without this option, the compiler generates many warning messages asking you to enable the option.
Select your project and select [Project - Properties]. Then Property Pages dialog opens. In [Configuration Properties - C/C++ - Code Generation], change the following ones:
The library is compiled with /Zc:forScope (Force Conformance in for loop scope) and /GR (Enable Run-Time Type Info) and without /Zc:wchar_t (Treat wchar_t as Built-in Type) option.
/Zc:wchar_t should be set (that is Yes on IDE). With wrong setting of /Zc:wchar_t, you may encounter the linking failure on String methods.
If you don't set /Zc:forScope (Force Conformance in for loop scope), some of the headers may produce some syntax errors; they're written in latest C++ standard and the compiler does not accept them.
If you don't set /GR (Enable Run-Time Type Info), your code may produce some wrong result or cause runtime exceptions.
Select your project and select [Project - Properties]. Then Property Pages dialog opens. In [Configuration Properties - C/C++ - Language], change the following ones: