Error lnk2038: detected “0”_ ITERATOR_ DEBUG_ The reason and solution of the unmatched item of “level”

https://blog.csdn.net/wzsy/article/details/70599654
① The value “0” does not match the value “2”. Debug uses the library files under Release.
② The value “2” does not match the value “0”. Release uses the library file under Debug.
In both cases, you just need to set its value in the preprocessing definition to match the program you want to call. In VS2010, the default value is 2 in Debug mode and 0 in Release mode.
For case one, just in the project ->; Property – & gt; Configure properties ->; C/C++-> Preprocessor ->; Add “_ITERATOR_DEBUG_LEVEL=0” to the preprocessing definition.
Or modify the run to use Release mode, corresponding to: Project ->; Property – & gt; Configure properties ->; C/C++-> Code generation ->; MD
For case two, just in the project ->; Property – & gt; Configure properties ->; C/C++-> Preprocessor ->; Add “_ITERATOR_DEBUG_LEVEL=2” to the preprocessing definition.
Or modify the run using Debug mode, corresponding to: project ->; Property – & gt; Configure properties ->; C/C++-> Code generation ->; MDd

Read More: