C 中的动态转换:相当于 Java 的 instanceof
Java 中的 Instanceof 允许开发人员确定对象是否属于特定类。在 C 中,有多种技术可以实现类似的功能。
方法:
Dynamic_cast 是一种运行时类型识别机制,是一种常见的方法。它提供对对象实际(动态)类型的访问:
<code class="cpp">if (NewType* v = dynamic_cast<NewType*>(old)) { // old was safely casted to NewType v->doSomething(); }</code>
注意事项:
替代方法:
注意:
应谨慎使用动态转换,因为它可能表明设计缺陷。考虑虚拟函数或访问者模式等替代方案,以避免过度使用。
以上是如何用C实现Java的'instanceof”功能?的详细内容。更多信息请关注PHP中文网其他相关文章!