【文件】CString类字符串序列化分析

来源:互联网 发布:宁波院士之乡 知乎 编辑:程序博客网 时间:2024/06/06 02:13

一、代码分析    
        CString类是先写入长度,再写入数据 。在ar<<str处下断点调试。  

void CTUselesssDoc::Serialize(CArchive& ar){if (ar.IsStoring()){// TODO: add storing code hereCString str = "This is a test";//写入CString变量ar<<str;    //运算符重载,转到CArchive::<<(CString &string)的序列化函数中去}else{// TODO: add loading code herear>>m_str;//变量C**Doc::CString m_str}

        写入文本数据,可用 ar.WriteString((LPCSTR)str);

二、总结

       1、主要是在存取CString数据时,会存一个长度在字符串前面先写入长度。

       2、MFC菜单资源中,String Table中,IDR_MAINFRAME第3项改为.stu是指文档后缀名,保存时会自动添加。

参考:1、关于CString 对象的序列化

2、利用CArchive类实现任意数据结构的序列化

3、数据的序列化

4、CString的序列化问题

5、MFC序列化

原创粉丝点击