DYNAMIC_DOWNCAST

来源:互联网 发布:淘宝详情页尺寸790 编辑:程序博客网 时间:2024/06/07 03:19

http://www.cnblogs.com/peijihui/archive/2010/11/17/1879542.html

http://blog.csdn.net/augusdi/article/details/35991773


DYNAMIC_DOWNCAST(class, pointer ):如果pointer指针所指向的对象是class类型的,就返回这个指针。否则返回NULL


以下这段儿代码
CPnrListCtrl& listCtrl=((CPnrListView*)GetActiveView())->GetListCtrl();
有可能会有问题。就是当GetActiveView()返回的不是CPnrListView的时候,得到的listCtrl是错误的指针(也可能指向未知位置)

如下可以解决
CPnrListView *pListView=DYNAMIC_DOWNCAST(CPnrListView,GetActiveView());
 if(pListView==NULL)
  return;


我程序:


0 0
原创粉丝点击