Конструктор используется для того, чтобы задать внутренние переменные, например.
Деструктор должен убить всю неиспользуемую память, когда вы вызываете "delete *pointer".
Например:
#include <iostream>
using namespace std;
class MyClass {
private:
int a, b, c;
public:
MyClass() { a = 0; b = 0; c = 0; } // без параметров
MyClass(int d) { a = d; b=0; c=0; } // 1 параметр
MyClass(int d) { a = d; b=0; c=0; } // 1 параметр
MyClass(int d, int f) { a = d; b=f; c=0; } // 2 параметра
MyClass(int d, int f, int e) { a = d; b=f; c=e; } // 3 параметра
void get_data() { cout << a << " " << b << " " << c << endl; } // метод класса MyClass
};
int main() {
MyClass a;
MyClass b(1);
MyClass c(1, 2);
MyClass d(1, 2, 3);
a.get_data(); // вернёт 0 0 0
b.get_data(); // вернёт 1 0 0
c.get_data(); // вернёт 1 2 0
d.get_data(); // вернёт 1 2 3
return 0;
}
**Код "от балды", может и не работать, но принцип, думаю, понятен.