• 您的位置我爱Aspx >> VC.Net >> 不用VC中的Document能否存储数据
  • 不用VC中的Document能否存储数据

  • 作者:aspxer  来源:internet  日期:2007-5-21 23:49:18  关键字:数据
  • 不用VC中的Document能否存储数据

    sp; 不用VC中的Document能否存储数据

    (本文只适合初学者阅读,如果你是高手,而且你非要看,那就当成是茶余饭后的消遣吧.:-))

    我刚开始学VC的时候一直被那让人头痛的Document/View结构给搞的头晕.

    真的,我还记得第一次使用串行输出,ar<<m_xxx;这样的东西,当时我怎么

    也搞不明白,是个怎么会事情.后来,我知道是CArchive重载了<<和>>两个操作符.

    作用是吧,对象中的数据永久保存到磁盘上(说句笑话,这里永久是相对的如果你

    把磁盘格式化一样什么也没了).可是这些一般都是在CDocument类的派生类中重写

    Serialize函数来完成的.这是很自然,因为CDocument可以理解是一个文件的抽象形式

    而View则正是需要Document提供的数据,来完成对用户的显示.可是想想.如果,我是

    如果,有一天用户都是瞎子,或者他们不想看所有的数据,那要是还是吧,那些要显示和不要显示

    的数据都放在CDocument类中吗?那样结构显然是有点乱.是的,CDocument完全是因为要

    和CView进行交互才必须要用到的.那么好吧,虽然不要用户看见那些数据,可是又必须要

    保存的数据,我们该怎么办?是啊,谁都想的到,一定要用到Serialize否则什么也无法进行

    根据MSDN的说法.要拥有Serialize必须要从CObject类派生类才可以那样做.还要什么想想看

    当然是一个SaveData和一个LoadData了,要知道我们只是不想让用户来干预,而不是不处理这些

    数据,也就是说这些数据仅仅只是不和View打交道.那么好吧,我还是来点例子,那样会更有说服力

    我先在CSerData.h

    class CSerData : public CObject

    我对这篇文章有话说?
  • 广告位招租,广告代号:content_468_15
  • 上一篇:DirectShow系列讲座之二——Filter原理
    下一篇:DirectShow系列讲座之一——DirectShow系统概述