在使用 iOS 和 Mac Objective-C 框架编程一段时间后,我开始喜欢上了 NSNotificationCenter 和 NSNotification 类实现的通用通知模式。回到 C++,它一直是我在大多数事情上的首选语言,我发现自己在尝试复制这种模式,并且相信确实应该已经有一个类似 C++ 类的通用实现来提供对它的支持。
似乎该模式在 C++ 中比在 Objective C 中更难实现,因为后者更具动态性,但这似乎远非不可能。我浏览了 boost 库,因为它们通常很棒,很遗憾没有在那里找到我的运气。尽管 boost::bind、boost::lamda、boost::function 似乎完成了大部分工作。我错过了一些明显的东西吗?是否已经存在任何可以让我轻松复制 NSNotification/NSNotificationCenter 行为的东西?
最佳答案
理论上,您可以创建一个类,该类具有调用某个通知时要调用的函数指针 vector - 一个具有字典的类,其中对象是推送通知时要调用的函数 vector
关于c++ - C++ 中的通知中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8016627/