想对这个方法有更深入的了解。。

解决方案 »

  1.   

    VC6 的在 afxwin2.inl 文件中。
      

  2.   

    很多核心的函数是不公开的。但是对于这个方法你需要了解什么呢?既然CView有如下成员,这个函数肯定是直接返回这个了
    protected:
    CDocument* m_pDocument;
      

  3.   

    这个不用深入了解的,有两个版本的,debug版的就在H文件中,一般是这样的:
    #ifndef _DEBUG  // ddView.cpp 中的调试版本
    inline CddDoc* CddView::GetDocument() const
       { return reinterpret_cast<CddDoc*>(m_pDocument); }
    #endif
    realease版的在CPP文件中:
    CddDoc* CddView::GetDocument() const // 非调试版本是内联的
    {
    ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CddDoc)));
    return (CddDoc*)m_pDocument;
    }
      

  4.   

    那是你自己视图类的,楼主问的是CView类。这个函数不是纯虚函数,因此CView自己也有这个函数的实现的
      

  5.   


    我看mfc深入浅出 还是有一处不太懂
    《深入浅出MFC》P369有写到:View对象何时被动态创建?答案是当使用者单击【Fiel/Open】或【Fiel/New】时,每当产生一个Document时,就会产生一组Document/View/Frame“三口组”。
    我看书中的代码,对于CView的动态创建没找到在哪里动态创建的?请大侠指教。。
      

  6.   

    这个同样被隐藏起来了,你在代码里是找不到的,他实际应该是在CDocTemplate之类的类中创建的