Boost C++ Libraries/Boost.Asio

Boost.Asio - mutable_buffer

까마귀75 2021. 3. 19. 15:30
728x90
반응형

mutable_buffer

수정할 수 있는 버퍼를 보유한다.

class mutable_buffer

멤버 함수

이 름 설 명
data 메모리 범위 시작 위치에 대한 포인터를 가져온다.
mutable_buffer
[constructor]
빈 버퍼를 생성.

주어진 메모리 범위를 나타내는 버퍼 생성.
operator+= 지정된 바이트 수만큼 버퍼의 시작 위치를 이동한다.
size 메모리 범위의 크기를 가져온다.

관련된(related) 함수

이 름 설 명
operator+ 다른 버퍼의 시작 부분에서 오프셋되는 수정할 수 있는 새 버퍼를 생성한다.

mutable_buffer 클래스는 수정할 수 있는 버퍼의 안전한 표현을 제공한다. 기저 데이터를 소유하지 않으므로, 복사나 할당 비용이 저렴하다.

버퍼 내용에 접근

버퍼 내용은 data()size() 멤버 함수를 사용하여 접근할 수 있다:

boost::asio::mutable_buffer b1 = ...;
std::size_t s1 = b1.size();
unsigned char* p1 = static_cast<unsigned char*>(b1.data());

data() 멤버 함수는 유형 안전성 위반을 허용하므로, 응용프로그램 코드에서 사용하는 경우 신중하게 고려해야 한다.

요구 사항

일반 헤더 : boost/asio/buffer.hpp
편의 헤더 : boost/asio.hpp

Boost.Asio 홈

728x90
반응형