1. 程式人生 > 實用技巧 >C++基礎-類的建構函式和解構函式(this)

C++基礎-類的建構函式和解構函式(this)

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; }