std::Funtion 정리
DevCho1107
·2023. 4. 6. 13:36
최근에 공부하면서 새로 알게 된 함수포인터 비슷한 기능을 정리해본다.
이것도 boost에서 넘어왔다는데, C++11 표준으로 추가됐다.
사용방법 은 아래와 같다.
std::function<void(UINT32, UINT32, BYTE*)> SendPacketFunc; // 선언
// 람다형식으로 사용
auto sendPacketFunc = [&](UINT32 clientIndex_, UINT16 packetSize, BYTE* pSendPacket)
{
SendMsg(clientIndex_, packetSize, pSendPacket);
};
위의 코드에서 SendPacketFunc는 std::function 클래스 템플릿을 이용하여 선언된 변수로, 함수나 함수 객체를 저장할 수 있는 변수이다. 위와 같은 방식으로 SendPacketFunc 변수를 통해 여러 곳에서 같은 함수나, 함수 객체를 호출 할 수 있다.
불필요한 h파일 인클루드가 필요없어지며, 편리하게 코드 작성이 가능하다.
'< Programming > > C++' 카테고리의 다른 글
constexpr ( generalized constant expressions ) (0) | 2023.05.04 |
---|---|
C++ 17 에서 업데이트 된 기능 정리. (0) | 2023.04.25 |
RingBuffer 구현예제. (0) | 2023.04.20 |
C++ Window IOCP Server (0) | 2023.04.06 |
override & virtual 사용하기 (0) | 2020.02.03 |