В настоящее время я изучаю, как использовать необработанные указатели в C ++. Я понимаю, как динамически выделять 2D-массив, однако в качестве упражнения для себя я попытался применить свое понимание нескольких ...

1
Mutating Algorithm 31 Мар 2021 в 05:24

1 ответ

Лучший ответ
matrix[i] = new double*[i + 1] {};
for(size_t j {}; j < 10; ++j) {

Это ваша ошибка прямо здесь, вы выделяете массив из элементов «i + 1», а затем выполняете цикл для 10, вам либо нужно иметь i + 1 в обоих местах, либо 10, иначе это неопределенное поведение. То же самое относится и к удалению (цикл проверяет 10, но вы выделили только i + 1).

2
Borgleader 31 Мар 2021 в 02:36