• 7241阅读
  • 1回复

[讨论]qobject_cast vs static_cast [复制链接]

上一主题 下一主题
离线numen
 

只看楼主 正序阅读 楼主  发表于: 2011-02-27
目前在windows 7下写一个qt程序,发现了一个奇怪的问题
假定T继承了QObject,

在正常的slot函数中T * t=qobject_cast<T*>(this->sender()); 或者t=qobject_cast<T*>(obj);都可以得到一个有效的指向T的指针
但是如果是在T的destroyed信号对应的slot中转换的话就只能得到空指针,而如果是用static_cast则可以得到有效的指针,非常奇怪.
欢迎访问我的blog:
http://www.cnblogs.com/baizx
离线ooyoyo
只看该作者 1楼 发表于: 2011-02-27
应该是和static_cast没有运行时类型检查有关吧?
文档里讲qobject_cast类似dyanmic_cast,你试试看dynamic_static
快速回复
限100 字节
 
上一个 下一个