STL: Przechowuje referencje lub wartości?

Zawsze byłem trochę zdezorientowany tym, jak pojemniki STL (wektor, lista, mapa ...) przechowują wartości. Czy przechowują odniesienia do wartości, które przekazuję, czy też same kopiują / kopiują konstrukcje + przechowują wartości?

Na przykład,

int i;
vector<int> vec;
vec.push_back(i);
// does &(vec[0]) == &i;

i

class abc;
abc inst;
vector<abc> vec;
vec.push_back(inst);
// does &(vec[0]) == &inst;

Dzięki

questionAnswers(2)

yourAnswerToTheQuestion