У меня есть std::vector<int>
и указатель int*
, который указывает на элемент в векторе. Допустим, указатель указывает на третий элемент: pointer=&vector.at(2)
. Если я теперь перетасовываю вектор, будет ли он по-прежнему указывать на один и тот же элемент (третий) или он укажет новое место, где теперь был перемещен элемент, который раньше был третьим?
После этого Id хотел бы сделать вопрос немного более общим: как указывают указатели и итераторы на элементы в векторе, когда вектор расширяется или уменьшается?