2017-03-22 2 views
0

Was bedeutet der Begriff "Kündigung Housekeeping"? Ich habe gelesen, dass Destruktoren verwendet werden, um Terminierung Housekeeping für ein Objekt einer Klasse durchzuführen. Ich weiß nicht, was es bedeutet.Was bedeutet Kündigung Housekeeping?

Danke.

+0

Ich weiß, was ein Destruktor ist und ich weiß, was es tut, will ich wissen, was der Ausdruck bedeutet, den ich erwähnte. –

+0

"Beendigung" bezieht sich normalerweise auf das Ende des Programms. –

Antwort

2

Im Kontext von Destruktoren ist Terminierung Housekeeping die Arbeit, die getan werden muss, bevor ein Objekt zerstört werden soll.

Wenn Sie etwas tun möchten, bevor das System den Speicher des Objekts wiederherstellt, schreiben Sie den Code in destructor.

Zum Beispiel verwenden Anfänger es, um die Reihenfolge der aufgerufenen Konstruktoren und Destruktoren zu verstehen.

wir ein Beispiel aus here nehmen:

#include <iostream> 

using namespace std; 

class Line { 
    public: 
     void setLength(double len); 
     double getLength(void); 
     Line(); // This is the constructor declaration 
     ~Line(); // This is the destructor: declaration 

    private: 
     double length; 
}; 

// Member functions definitions including constructor 
Line::Line(void) { 
    cout << "Object is being created" << endl; 
} 

Line::~Line(void) { 
    // THE PLACE FOR TERMINATION HOUSEKEEPING 
    cout << "Object is being deleted" << endl; 
} 

void Line::setLength(double len) { 
    length = len; 
} 

double Line::getLength(void) { 
    return length; 
} 

// Main function for the program 
int main() { 
    Line line; 

    // set line length 
    line.setLength(6.0); 
    cout << "Length of line : " << line.getLength() <<endl; 

    return 0; 
} 

Sie ein anderes Beispiel here sehen können.