qobject_cast()对QObject类执行动态强制转换。
qobject_cast()函数的行为类似于标准c++ dynamic_cast(),但执行速度比dynamic_cast 更快,且不需要C++的RTTI 的支持,但qobject_cast 仅适用于QObject 及其派生类。
如果对象的类型正确(在运行时确定),则返回一个非零指针,如果对象的类型不兼容则返回0
条件:
强制转换的类型(比如AddInInterfaceBase)必须继承QOBject,要有Q_OBJECT宏
案例:
子类继承了父类的age值并进行了修改,把子类转成父类后可用拿到子类中修改的值,注意和多态有区别。
📢博客主页: 主页
📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
📢本文由 梦回阑珊 原创,首发于 CSDN,转载注明出处🙉
📢代码改变世界,你来改变代码!✨