Zzzeyu 发表于 2018-12-6 19:26:25

关于C++文件读写操作

在运行下面的程序的时候,先不注释下面的注释代码的时候,文件成功写入,也成功读出。C->print()可以正常输出我是狗蛋的
但是运行一次文件写入数据后,注释掉下面注释的代码的时候。C->print()读不出东西来。
到底为什么呀?文件里不是有数据了吗?为什么读出来是空{:5_100:} ,,,,求大家指教
class Cat{
        public:
                string name;
                int age;
               
                Cat(){
                       
                }
                Cat(string name,int age){
                        this->age = age;
                        this->name = name;
                }
                ~Cat(){
                       
                }
               
                void print(){
                        cout<<"我叫"<<name<<endl;
                }
};

int main(){
        Cat* A = new Cat("狗蛋",3);
        Cat* C;
//        ofstream outfile;
//        outfile.open("test.txt",ios::out|ios::binary);
//        outfile.write(reinterpret_cast<char *>(&A), sizeof(A));
//        outfile.close();
       
        ifstream infile;
        infile.open("test.txt",ios::in|ios::binary);
        infile.read(reinterpret_cast<char*>(&C),sizeof(C));
        infile.close();
        C->print();

}

1809228982 发表于 2018-12-21 14:09:58

不懂c++,帮你顶一下
页: [1]
查看完整版本: 关于C++文件读写操作