But neither, to be pedantic ( which is all what language and library standards are about ) does it explicitly say ( that I can find ) that references etc . are valid until the item is explicitly destroyed-it would be bonkers if they were invalidated somehow, and the standard very strongly implies that the implementation will be a doubly linked list of items ( e . g . list . insert insists that this be a constant time operation, whereas vector . insert does not ).