我爱Aspx >> VC.Net >> 不用VC中的Document能否存储数据不用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
【我对这篇文章有话说?】
Effective STL:Item 16:如何将..[05-21]
异步 SOCKET 编程 - 发送和接收数..[05-21]
MFC中的数据类型[05-21]
数据类型的转换[05-21]
TN002: Persistent Object Data ..[05-21]
如何在Linux下刻录数据光盘[05-21]
直接通过ADO操作Access数据库[05-21]
游戏外挂第一步(拦截数据封包)和..[05-21]
游戏外挂第一步(拦截数据封包)和..[05-21]
Crazybit开发手记(一):设计之..[05-21]
系列化入门读物---PART2[05-21]
C#中调用Windows API的要点[05-21]
MFC动态创建控件的消息处理[05-21]
C#中调用Windows API的要点[05-21]
第四个“回”字[05-21]
巧用ASP生成PDF文件[05-21]
Outlook风格的使用不同的颜色单列..[05-21]
MMX开发文档[05-21]
使用C#制作的更换桌面背景程序[05-21]
基于MFC的编写线程快速入门[05-21]