我试图用指向文件的指针来存储下面的Class实例。
class wavelet_tree {
public:
std::set<char> alphabet;
char middle;
wavelet_tree* Right;
wavelet_tree* Left;我似乎找不到一种适当的方法来将这些数据写入文件和从文件中读取。谢谢。
发布于 2019-11-05 04:06:37
经典的递归遍历树可以提供帮助。例如,类似于:
void wavelet_tree_to_stream(std::ostream& to, const wavelet_tree* node) {
to << "{"
to << "\"alphabet\":\"" << node->alphabet << "\"";
to << ',';
to << "\"middle\": \"" << node->middle << "\"";
if(nullptr != node->Left) {
to << ",\"Left\" : ";
wavelet_tree_to_stream(to, node->Left);
}
if(nullptr != node->Right) {
to << ",\"Right\" : ";
wavelet_tree_to_stream(to, node->Right);
}
to << "}";
}
......
wavelet_tree_to_stream(fstream, root);https://stackoverflow.com/questions/58699873
复制相似问题