1.构造函数主要是类在进行实例化的时候进行操作
2.析构函数主要是在类被删除的时候进行操作
3.this主要是将输入的变量传递给类的内部变量进行使用
// // Created by qq302 on 2020/7/19. // #include <iostream> #include <fstream> using namespace std; class StoreQuote { public: StoreQuote(); //构造函数,用于在创建时执行命令 ~StoreQuote(); //析构函数, 类关闭时候的操作 void ask_quote(string own); void ask_speaker(); bool write(); private: string quote, speaker, owner; ofstream InputWrite; }; StoreQuote::StoreQuote() { InputWrite.open("C:/Users/qq302/CLionProjects/untitled1/test.txt", ios::app); //打开文件夹 } StoreQuote::~StoreQuote() { InputWrite.close(); //类删除时,关闭文件 } void StoreQuote::ask_quote(string owner) { this->owner = owner; //将传入的数据赋值给类的变量属性owner,可以在类的其他地方进行调用 cout << "请输入你喜欢的书名:"; cin >> quote; } void StoreQuote::ask_speaker() { cout << this->owner << ":"; cout <<"请输入书名的作者:"; cin >> speaker; } bool StoreQuote::write() { if (InputWrite.is_open()) { InputWrite << quote << "|" << speaker << "\n"; return true; } else { return false; } } int main() { StoreQuote SQ; SQ.ask_quote("alex"); SQ.ask_speaker(); if (SQ.write()) { cout << "文件写入成功" << endl; } else { cout << "文件写入失败" << endl; } return 0; }