社区
C++ 语言
帖子详情
c++能否像java一样直接把object对象保存到文件
LH50404797
2009-05-21 06:17:34
请问各位猛男,c++能否像java一样直接把object对象保存到文件,然后从文件读取对象直接用指针引用
...全文
294
12
打赏
收藏
c++能否像java一样直接把object对象保存到文件
请问各位猛男,c++能否像java一样直接把object对象保存到文件,然后从文件读取对象直接用指针引用
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
arong1234
2009-05-22
打赏
举报
回复
这是你没有用对吧?我觉得它很好啊?!
不过它的扩展性不在CArchive本身,而是被串行化的对象上扩展,Serialize(CArchive& ar)是一个非常有用的方法
[Quote=引用 7 楼 alicehyxx 的回复:]
CArchive实现存在很多问题,比如可扩展性不好等等。
建议自己实现。
[/Quote]
周成风
2009-05-22
打赏
举报
回复
[Quote=引用 8 楼 arong1234 的回复:]
这是你没有用对吧?我觉得它很好啊?!
不过它的扩展性不在CArchive本身,而是被串行化的对象上扩展,Serialize(CArchive& ar)是一个非常有用的方法
[/Quote]
我说得不太科学,不是CArchive实现存在问题,而是实际使用的时候会存在一些问题。
比如一个对象加了几个成员变量,这时候之前存储的序列化文件参数是不是读取不进来?
papaofdoudou
2009-05-22
打赏
举报
回复
mark
Proteas
2009-05-22
打赏
举报
回复
If Java can , C++ can.
LH50404797
2009-05-22
打赏
举报
回复
谢谢各位踊跃发言,我已经知道怎么弄了
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
class A
{
private:
string name;
string pass;
public:
void print()
{
cout < <"name = " < <name < <endl;
cout < <"password = " < <pass < < endl;
}
A()
{
}
A(string n,string p)
{
name=n;
pass=p;
}
};
int main()
{
A a1("TT","dd");
A a2("xx","ff");
ofstream Myfile;
Myfile.open("A.txt",ios::binary);
Myfile.write((char *)&a1,sizeof(A));
Myfile.write((char *)&a2,sizeof(A));
a1.print();
a2.print();
Myfile.close();
A b1;
A b2;
ifstream Myfile2;
Myfile2.open("A.txt",ios::binary);
Myfile2.read((char *)&b1,sizeof(A));
Myfile2.read((char *)&b2,sizeof(A));
b1.print();
b2.print();
return 0;
}
周成风
2009-05-21
打赏
举报
回复
CArchive实现存在很多问题,比如可扩展性不好等等。
建议自己实现。
pathuang68
2009-05-21
打赏
举报
回复
学习了,很好!
「已注销」
2009-05-21
打赏
举报
回复
纯C++:boost可不就是纯C++??
boost里的序列化还是很好用的。
效率很高。
Jamy325
2009-05-21
打赏
举报
回复
纯粹的C++应该没有,但是vc里面有序列化技术CArchive类已经替你封装好了,可直接使用.
如果要自己的实现的话.用是操作文件的方式吧``
「已注销」
2009-05-21
打赏
举报
回复
序列化,boost里有
jixingzhong
2009-05-21
打赏
举报
回复
CArchive原理
http://www.vckbase.com/document/viewdoc/?id=607
jixingzhong
2009-05-21
打赏
举报
回复
MFC 提供CArchive类实现数据的缓冲区读写,同时定义了类对象的存储与读取方案
c++
开发中利用yaml-cpp读写yaml配置
文件
在程序员的开发生涯中,读写配置
文件
必不可少。 配置
文件
有利于我们灵活配置工程,解决大量重复劳动,也方便调试。 配置
文件
的格式有很多,最简单的有一行一行的文本,也有像 json、xml、protocol buffer 这样结构化的格式,当然也有 yaml 这种格式。 今天的博文介绍的是如何在
C++
开发中利用 yaml-cpp 开源库读写 yaml 配置
文件
。 如果有 Python 开发经验的同学...
c++
利用yaml-cpp读写yaml配置
文件
在程序员的开发生涯中,读写配置
文件
必不可少。 配置
文件
有利于我们灵活配置工程,解决大量重复劳动,也方便调试。 配置
文件
的格式有很多,最简单的有一行一行的文本,也有像 json、xml、protocol buffer 这样结构化的格式,当然也有 yaml 这种格式。 今天的博文介绍的是如何在
C++
开发中利用 yaml-cpp 开源库读写 yaml 配置
文件
。 如果有 Python 开发经验的同学,可能知道用 Python 读取 yaml 是再简单不过了,但是
C++
麻烦一点,它需要你自己下载源码然后编译
C++
去除cpp
文件
的注释
问题:读取一个cpp
文件
,去除其中所有的单行注释(//)和多行注释(/**/),将去除注释后的内容写入一个新
文件
。 注意: 不能去除字符串中的任何字符,如 "asdf//gh/**/k" 需要原样输出 能够识别转义的双引号(\")和非转义的双引号("),如: '\"'(单引号中的转义双引号字符) "asdf\"" (字符串中的转义双引号不能表示字符串结束) \"aaa"bcdef"(同理,转义双引号不能表示字符串开始) 命令行参数为: 参数1:原
文件
名 参数2:新
文件
名 ...
【log4】
c++
日志工具之——log4cpp
1、log4cpp概述 Log4cpp是一个开源的
C++
类库,它提供了
C++
程序中使用日志和跟踪调试的功能,它的优点如下: 提供应用程序运行上下文,方便跟踪调试; 可扩展的、多种方式记录日志,包括命令行、
文件
、回卷
文件
、内存、syslog服务器、Win事件日志等; 可以动态控制日志记录级别,在效率和功能中进行调整; 所有配置可以通过配置
文件
进行动态调整; 多语言支持,包括
Java
(log4j),
C++
(log4cpp、log4cplus),C(log4c),python(...
NDK编程
Java
如何
保存
C或
C++
对象
前言 最近有个想进阶Android,学习NDK编程的小伙伴问我说看了不少网上的视频教程,大多数的主题都是讲JNI的方法签名、JNI线程绑定、JNI调用
Java
方法等主要的内容。 自己在练习的过程中发现如果需要重复利用一个C或者
C++
的
对象
时就不知道怎么处理了。其实这就是
Java
对象
如何
保存
Native
对象
的一个问题而已。 听了这个朋友的疑问,我翻了下网上关于NDK的视频教程,确实是很多教程都没有介绍
Java
对象
如何复用一个Native
对象
。但是这又是一个在NDK实战中必然会碰到的一个关键点。 有道是老师带入
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章