C++ array类如何实现序列化

   2024-10-06 4070
核心提示:要实现C++数组类的序列化,可以通过重载输出流操作符()和输入流操作符()来实现。下面是一个简单的示例代码:#include iostre

要实现C++数组类的序列化,可以通过重载输出流操作符(<<)和输入流操作符(>>)来实现。下面是一个简单的示例代码:

#include <iostream>#include <fstream>class Array {private:    int* data;    int size;public:    Array(int size) {        this->size = size;        data = new int[size];    }    ~Array() {        delete[] data;    }    friend std::ostream& operator<<(std::ostream& os, const Array& arr) {        for (int i = 0; i < arr.size; i++) {            os << arr.data[i] << " ";        }        return os;    }    friend std::istream& operator>>(std::istream& is, Array& arr) {        for (int i = 0; i < arr.size; i++) {            is >> arr.data[i];        }        return is;    }};int main() {    Array arr(5);    // 将数组序列化到文件    std::ofstream outFile("array.txt");    outFile << arr;    outFile.close();    // 从文件中反序列化数组    std::ifstream inFile("array.txt");    inFile >> arr;    inFile.close();    std::cout << "Deserialized array: " << arr << std::endl;    return 0;}

在上面的示例中,Array类是一个简单的数组类,重载了输出流操作符和输入流操作符。在main函数中,我们首先将数组序列化到文件中,然后从文件中读取并反序列化数组。最后打印反序列化后的数组内容。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号