Я знаю, что когда вы передаете массив в качестве параметра, вы в основном передаете адрес массива с индексом 0. Тогда аппаратное обеспечение знает, что int обычно составляет 4 байта, поэтому он может легко получить доступ к другим элементам. Мой вопрос про вектор. Если у меня есть функцияПередача ссылки на вектор как параметр
void bla(std::vector<int> &arr)
{
}
Затем он должен передать ссылку на вектор, но это происходит, как с массивами? Векторы реализованы с использованием массивов, поэтому мое предположение заключается в том, что когда я передаю ссылку, она просто передает адрес первого элемента. Правильно это или нет?
Кроме того, если я передам как вектор, что произойдет? Будет ли он создавать копию в стеке? Thanks
Итак, когда я передаю вектор по ссылке, я передаю какой-то адрес, а затем оборудование может каким-то образом получить вектор, используя только один адрес, правильно? – Andrey