Код: Выделить всё
int* intPtr = new int[5];
// ...do stuff...
Код: Выделить всё
int* newIntPtr = new int[5];
- Использование цикла for
Код: Выделить всё
for (int i = 0; i < 5; i++) *(newIntPtr + i) = *(intPtr + i); - Использование std::copy()
Код: Выделить всё
std::copy( intPtr, intPtr + 5, newIntPtr );
Код: Выделить всё
warning C4996: 'std::_Copy_impl': Function call with parameters that may be unsafe...
Код: Выделить всё
std::copy(intPtr, intPtr + 5, stdext::checked_array_iterator(newIntPtr, 5));
Итак, как же следует Я решу это? Должен ли я использовать простой цикл for и эффективно избегать предупреждения, или мне следует использовать std::copy() и что-то сделать, чтобы избежать предупреждения? Конечно, я мог бы отключить предупреждение, но это не похоже на правильное решение... или нет?
Подробнее здесь: https://stackoverflow.com/questions/290 ... opy-dynami