【发布时间】:2008-11-22 20:20:49
【问题描述】:
我需要将指针转换为 long (SendMessage()) 我想安全地检查另一边的变量是否正确。所以我正在考虑做 dynamic_cast 但这不适用于非虚拟的类。然后我想到了做 typeid ,但是直到我传递一个派生的 var 作为它的基础。
有什么方法可以检查指针是否是我在运行时所期望的? 有没有办法可以使用 typeid 来查看指针是否是从特定基派生的类型?
【问题讨论】:
-
您的问题文本与您的问题标题有何关联?
-
我认为它展示了糟糕的设计。如果绝对不涉及虚函数,为什么需要知道基类?这不像你可以安全地沮丧或任何事情。另外,在编写基类时最好至少有一个虚拟 dtor。
-
这不是与stackoverflow.com/questions/311102/… 几乎相同的问题,但建议的方法不同吗?