就游戏的消息系统而言,或者一般来说,在C ++中,这三者中的哪一个更好? enum感觉最好,但我认为这意味着新课程无法真正做出贡献。字符串似乎很适合脚本优势,但我担心开销。整数定义感觉有点Cish。
由于
答案 0 :(得分:3)
为什么不制作Message类?这可能包含一个用于标识消息的字符串,一个整数id等。这样您就可以获得两个系统的最佳效果。你甚至可以为不同类型的消息设置子类。
答案 1 :(得分:2)
这一切都取决于你要做什么,消息中的数据类型(变量与固定长度),消息的频率,消息的大小等。例如,我看过使用的消息系统struct
和union
打包低级别邮件。
没有一种正确的方式可以做到这一点,至少没有更多信息。
答案 2 :(得分:0)
National Instruments Libraries和许多其他板级接口程序使用#define来解决行业标准错误。
答案 3 :(得分:0)
在C ++中,对于简单常量,请远离#define
。它不能很好地与命名空间一起使用。相反,在适当的命名空间中使用enum
或仅const
变量。这些中的任何一个都是类型安全的并且适当地限定范围。
只有#define
可以做的事情,但是当有另一种方式时可以避免它。