VC++的大侠们,解释一下下面语句!该如何解决
VC++的大侠们,解释一下下面语句!
如题,下面的两行程序是为了获得状态栏的指针,
先获得了一个主窗口指针,之后通过主窗口指针来获得状态栏的指针,很可惜,鄙人真是搞不太明白:
① (CMainFrame*)AfxGetApp()->m_pMainWnd;//这个语句中的(CMainFrame*)是修饰谁的?
② 执行完第一个语句后 pFrame与对象m_pMainWnd之间有什么关系?
③ 获得状态栏指针时,为什么要用&pFrame->m_wndStatusBar,为什么要在pFrame的前面加一个取地址符???
CMainFrame *pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
CStatusBar *pStatus=&pFrame->m_wndStatusBar;
在此谢过诸位了!
------解决方案--------------------
(CMainFrame*)AfxGetApp()->m_pMainWnd;//这个语句中的(CMainFrame*)是修饰谁的?
可以查下优先级表
() ->是第一级的
强制转换是第二级
所以(CMainFrame*)则针对的是(AfxGetApp()->m_pMainWnd)
&pFrame->m_wndStatusBar; 这个等价与&(pFrame->m_wndStatusBar);
如题,下面的两行程序是为了获得状态栏的指针,
先获得了一个主窗口指针,之后通过主窗口指针来获得状态栏的指针,很可惜,鄙人真是搞不太明白:
① (CMainFrame*)AfxGetApp()->m_pMainWnd;//这个语句中的(CMainFrame*)是修饰谁的?
② 执行完第一个语句后 pFrame与对象m_pMainWnd之间有什么关系?
③ 获得状态栏指针时,为什么要用&pFrame->m_wndStatusBar,为什么要在pFrame的前面加一个取地址符???
CMainFrame *pFrame=(CMainFrame*)AfxGetApp()->m_pMainWnd;
CStatusBar *pStatus=&pFrame->m_wndStatusBar;
在此谢过诸位了!
------解决方案--------------------
(CMainFrame*)AfxGetApp()->m_pMainWnd;//这个语句中的(CMainFrame*)是修饰谁的?
可以查下优先级表
() ->是第一级的
强制转换是第二级
所以(CMainFrame*)则针对的是(AfxGetApp()->m_pMainWnd)
&pFrame->m_wndStatusBar; 这个等价与&(pFrame->m_wndStatusBar);