Почему std::copy завершается с ошибкой при успешном выполнении цикла? [дубликат]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 Почему std::copy завершается с ошибкой при успешном выполнении цикла? [дубликат]

Сообщение Anonymous »


Я получаю ошибку сегментации, когда использую std::copy, но при использовании цикла код работает. Я знаю, что Insert Begin() + 2 вставляет элемент после второго элемента, поэтому кажется, что моя логика начала и конца верна. Я не могу понять, что не так. Я заметил, что если я напишу test.back().reserve(4096); непосредственно перед копированием, все будет в порядке, требует ли копирование заранее зарезервировать размер? Разве это не чрезвычайная вероятность ошибок? Что здесь не так?
bool errorVersion = 0; //clang++ -std=c++20 -fsanitize=undefined,memory -march=native -Wall -Wextra -g main.cpp && ./a.out #include #include использование пространства имен std; int main(int argc, char *argv[]) { вектор тест; test.push_back({}); for(int i=0; i
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»