내가 제공하는 버퍼에 하나 이상의 메시지 목록을 반환하는 네트워크 API로 작업하고 있습니다. | B |메모리 블록 할당을
|B|message 1|S|message 2|S|message 3|E|
: 일반적인 버퍼가 돌아 오면 다음과 같습니다 시작을 나타내는 문자입니다. | S | 구분 기호이며 | E | 끝이다. 메시지의 길이와 번호는 다양 할 수 있습니다. 내가 뭘하고 싶은지,이 버퍼를 한 번 이동하여 (이 경우) 3 개의 구성 요소 메시지로 분할하고 std::unique_ptr<char*>
같은 코드를 각각의 개별 메시지를 처리하는 코드로 보내고 unique_ptr이 해당 버퍼를 해제하도록합니다. 기억. 그러나 나는이 메시지를 그들의 버퍼에서 작은 메시지로 복사하지 않고 그렇게하고 싶습니다.
버퍼를 새로운 작은 힙 블록에 효과적으로 할당하고 자동 정리의 이점을 얻는 데 사용할 수있는 기술이 있습니까?
새 게재 위치를 찾으십시오. –