MFC 상호 참조
SDI 에서의 각 부분 상호 참조.
//각각 헤더파일 include
#include "MainFrm.h" //메인프레임 헤더파일
#include "ClassDoc.h" //Doc클래스 헤더파일
#include "ClassView.h" //View를 include 할때는 반드시 Doc 헤더파일이 위에잇어야한다 #include "Class.h" //APP Class 의 헤더파일
//App 클래스에서 View, Doc 참조
CMainFrame *pMain=(CMainFrame *)AfxGetMainWnd(); //App -> MainFrm
CClassView *pView=(CClassView *)pMain->GetActiveView(); //App -> MainFrm -> View
CClassDoc *pDoc=(CClassDoc *)pMain->GetActiveDocument(); //App -> MainFrm -> Doc
//뷰클래스 에서 App, Frm, Doc 참조
void CClassView::OnMenuView()
CClassApp *pApp=(CClassApp *)AfxGetApp(); //View -> App
CMainFrame *pMain=(CMainFrame *)AfxGetMainWnd(); //View -> MainFrm
CClassDoc *pDoc=(CClassDoc *)pMain->GetActiveDocument();//View -> MainFrm -> Doc CClassDoc *pDoc=(CClassDoc *)GetDocument(); //View -> Doc
//MainFrame 클래스에서 View, Doc, App 참조
CClassView *pView=(CClassView *)GetActiveView(); //MainFrm -> View
CClassDoc *pDoc=(CClassDoc *)GetActiveDocument(); //MainFrm -> Doc
CClassApp *pApp=(CClassApp *)AfxGetApp(); //MainFrm -> App
//Doc 클래스 에서 App, MainFrm, View, 참조
CClassApp *pApp=(CClassApp *)AfxGetApp(); //Doc -> App
CMainFrame *pMain=(CMainFrame *)AfxGetMainWnd(); //Doc -> MainFrm
CClassView *pView=(CClassView *)pMain->GetActiveView();// Doc -> MainFrm -> View CClassView *pView=(CClassView *)m_viewList.GetHead(); // Doc -> View