2021년 7월 26일 월요일

c++ memcpy 대신 copy 를 쓰고 배열의 경우 checked_array_iterator 를 쓰면 된다

 https://docs.microsoft.com/ko-kr/cpp/standard-library/checked-array-iterator-class?view=msvc-160


memcpy 는 byte 단위로 복사를 하고 std::copy 는 자료형 단위로 복사를 함.

이때 vector 말고 단순 배열도 복사를 하고 싶을 때 가장 안전한 방법은 다음과 같음.


std::copy(begin, end, stdext::checked_array_iterator<T>(array, count)); 


참고로 성능은 memcpy 와 std::copy 는 비슷함.

댓글 없음:

댓글 쓰기

List