AfxGetMainWnd函数疑问,什么情况得到的会是父窗口的指针
最近碰到一个很奇怪的问题,查了半天才发现,原来是这个函数在作怪,问题如下:
最近程序会异常,跑不起来,调试的时候却是正常的,只好到处输入日志,结果发现在一个判断上出了问题,代码如下
if (AfxGetMainWnd() &&(CMainFrame*)AfxGetMainWnd()->一个变量)
{
访问变量中的函数
}
主框架创建时有指定一个父窗口,奇怪的是AfxGetMainWnd函数得到的居然是父窗口的指针,导致后面访问变量出错,程序就死了。
比较纠结的是,调试的时候都OK的,不知道怎么回事,AfxGetMainWnd什么时候会得到父窗口的指针呢??