I'm writing my own SDK for a 3D engine. Obviously it contains many classes and structs. One of the class I'm publishing to the users needs to use an STL member, the std::vector for instance.
My question is, how dangerous is it to include STL objects in a header file that I distribute in my SDK? Obviously, to be able to have this vector member in my class, I include <vector> in that header file, hence my question.
I don't know what is the real danger, but I feel like this might cause some trouble... its just a feeling I have. This fear comes from the fact that I don't know if it is still common for developers to update or change the version of STL they are using. I can't find any detailed discussion on this very specific subject.
Can anyone confirm if this is bad practice, and if there is a work-around or a correct way to do this?