-
카테고리
-
세부 분야
게임 프로그래밍
-
해결 여부
미해결
reinterpret_cast질문이있습니다.
22.04.28 22:35 작성 조회수 236
0
template<typename T>
BufferWriter& BufferWriter::operator<<(const T& src)
{
*reinterpret_cast<T*>(&_buffer[_pos]) = src;
_pos += sizeof(T);
return *this;
}
reinterpret_cast c++강의에서 아주 강력한 변환
포인터랑 정수사이도 변환이 가능하고.. 다 가능한 변환 느낌이었는데 앞에*를 붙여주는 이유가 궁금합니다.
*reinterpret_cast<T*>(&_buffer[_pos]) = src;
===========================
T*로 변환하는데 src가 참조라서 *를 한번 더 붙여주신건가요?
답변을 작성해보세요.
1
Rookiss
지식공유자2022.04.28
네 그렇습니다. 포인터 역참조를 할 때 *을 붙이는 것과 동일합니다.
단계별로 나눠서 쓰자면
1) T* temp = reinterpret_cast<T*>(...)
2) *temp = ...
요런 느낌이죠.
답변 1