新增加一个View类,在该类中使用GetDocument()时为什么要(C***Doc*)GetDocument()?
解决方案 »
- 关于vs的使用
- (结贴,谁接分?)帮忙看看OpenFromInitializationString有何不妥?连接不上access。OLEDB 使用者模板
- 用feof函数判断文件是否结束出现的诡异问题,高手帮忙解答下,在线等
- GetGlyphOutline函数返回的文字外矩形不正确,请高手帮忙,有点急
- 急:int64整数转化成?G?M?K的表示方法,最简单快速的算法怎么算?
- 关于tree contrl的一点点问题 我可以建立tree contrl 但是......
- 郁闷无止境!谁帮我解决CReBar四周显示蚀刻线的问题?要多少分都可以相送!
- 关于WIN32 服务
- 在线等待:关于静态分割窗口两个视图时间通讯的问题,急!!!!
- 请前辈发个IOCP服务器的完整例子。
- 请教一个问题
- 如何得到本局域网上所有主机的ip?
C***Doc是你的文档类型吧,比如可能是CMyDoc啊什么的。
因为默认的viewGetDocument()函数返回的是的CDocument*类型,所以要么在你的view类里重载GetDocument()让它返回你定义的documnet类,要么在所有调用GetDocument()的地方进行强制类型转换,以使用你的document类的特定方法。如果你取这个指针,要使用的是CDocument类的成员函数,那么这个类型转换也不必要
是不是因为你调用的是你的文档类自己定义的函数,而你定义的GetDocument()返回的是CDocument*,所以就得要强制转换一下啦:)
CMyDocument* GetDocument();
知道了吧,人家在做的时候已经把返回值做成你的文档类了,强制转换已经在GetDocument里实现了:)
祝你好运吧:)
CMyDoc* CSDIView::GetDocument()
{
return (CMyDoc*)m_pDocument;
}