Microsoft claims binary compatibility between Visual Studio 2015,2017 and 2019.
The runtime libraries and apps compiled by any of these versions of the compiler are binary-compatible.
How about static libraries (.lib files)?
I have my tiny C++ library composed of several C++ classes which make use of STL heavily. Header files of these classes are designed to be included in user applications, hence interface methods and data use STL containers. I deliver .lib,.dll and .h files to my users.
class MyClass {
public:
MyClass(std::string person, std::vector<float> anArray);
static std::vector<void*> getData();
}
If I would build my mylibrary.lib using VS2015, could it be used in VS2017?