中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c++序列化和反序列化怎么實現

c++
小億
97
2024-04-15 09:55:09
欄目: 編程語言

在C++中,序列化和反序列化可以通過自定義類來實現。以下是一個簡單的示例:

#include <iostream>
#include <fstream>

class Person {
private:
    std::string name;
    int age;

public:
    Person(std::string name, int age) : name(name), age(age) {}

    void serialize(std::ofstream& ofs) {
        ofs << name << " " << age << std::endl;
    }

    void deserialize(std::ifstream& ifs) {
        ifs >> name >> age;
    }

    void display() {
        std::cout << "Name: " << name << ", Age: " << age << std::endl;
    }
};

int main() {
    Person p1("Alice", 25);
    
    // 序列化
    std::ofstream ofs("person.txt");
    p1.serialize(ofs);
    ofs.close();

    // 反序列化
    Person p2("", 0);
    std::ifstream ifs("person.txt");
    p2.deserialize(ifs);
    ifs.close();

    // 顯示反序列化結果
    p2.display();

    return 0;
}

在上面的示例中,定義了一個Person類,包含姓名和年齡兩個成員變量。該類定義了serializedeserialize方法來序列化和反序列化對象的成員變量。在main函數中,創建了一個Person對象p1,并將其序列化到文件person.txt中。然后再從文件中反序列化得到一個新的Person對象p2,最后調用display方法顯示反序列化結果。

0
永昌县| 张掖市| 分宜县| 万荣县| 郧西县| 平武县| 年辖:市辖区| 东海县| 德令哈市| 通州区| 高邑县| 鲜城| 隆回县| 峡江县| 黄陵县| 贵州省| 荆门市| 金山区| 北宁市| 榆社县| 搜索| 阿拉善左旗| 伊金霍洛旗| 邵武市| 奉化市| 宜都市| 当雄县| 普宁市| 砚山县| 观塘区| 鄂伦春自治旗| 巴彦淖尔市| 涪陵区| 定日县| 芒康县| 班玛县| 横山县| 安国市| 林周县| 临武县| 宜章县|