如何在C中执行类型扫描?

我有一个ESB.任何序列化消息都传输其自己的完全限定名称(即名称空间类名称).每个消息都有一个具体的类型,它封装了要执行的特定逻辑.
每次收到消息时,我都需要首先对其进行反序列化,因此我可以执行其操作 – 更多,具体取决于具体类型 – .

我需要一种在编译时或在应用程序初始化期间注册每个类的方法.
使用.net我会使用反射来扫描程序集并在初始化期间发现消息类型,但是如何在C中执行?

解决方法:

C没有反射能力.我想你可以尝试扫描目标文件等,但没有可靠的方法来做到这一点(AFAIK);编译器可以完全消除或破坏某些东西.

基本上,对于序列化,您必须手动进行注册(半).但是您可能对序列化库感兴趣,这些库将帮助解决诸如Boost Serialization等杂务.

上一篇:【异常】SpringCloud报错while scanning for the next token found character ‘@‘ that cannot start any token


下一篇:如何使用card.io android SDK获取人类可读格式的完整卡号?