메시지를 수신하는 간단한 서버가 포함 된 프로젝트를 진행 중입니다.클래스 내 함수 유형을 만들 수 있습니까?
typedef void(Server::*MessageHandler)(Message msg);
:
class Message;
class Server
{
void handler1(Message msg);
void handler2(Message msg);
.
.
.
void handler19(Message msg);
};
내가 void
를 반환하고 다음과 같이 MSG라는 단일 Message
변수를 얻는 클래스 Server
의 새로운 기능 유형을 만들 수 있습니다
우리는 다음과 같은 수업을 가정 따라서 클래스 선언은 다음과 같습니다.
class Server
{
MessageHandler handler1;
.
.
.
MessageHandler handler19;
}
언급 한 내용은 sqlite3 콜백 함수 (함수 선언이 가장 깨끗하지 않은 곳)와 함께 사용할 수 있습니다.
가능한 경우 어떻게 구현할 수 있습니까?
가능하지 않은 경우 C# 대리자와 같은 코드를 더 간단하게 만드는 유사한 방법이 있습니까?
미리 감사드립니다. 코드에 대한
내가이 특정 좋은 아이디어라고 생각하지 않습니다. –
C++ 11에 액세스 할 수 있으면 다음과 같이 시도 할 수 있습니다. http://stackoverflow.com/questions/12338695/c11-styled-callbacks – RyanP