我正在使用旧版 C 库进行网络连接。例如,它允许我创建一个套接字服务器。我必须将函数指针传递给库以处理协议 - 例如处理消息结构、标头长度等。
在 C 程序中,您只需将指针传递给函数,例如get_protocol
. 但是这样做的OO方式是什么。
我有一个包装类,我们称之为socket_server
。我希望能够在运行时传递不同协议所需的函数指针。
我怎么做?这是策略模式解决的问题吗?
编辑
我喜欢 std::function 的想法,但我们暂时停留在 VS2008 上,所以 C++11 还没有对我开放。