little_greg Опубликовано 2 ноября, 2009 Жалоба Поделиться Опубликовано 2 ноября, 2009 всем привет, помогите разобраться с деструктор, почему при его вызове не появляется сообщение, что он вызван, или может быть он совсем не вызывается. заранее спасибо заголовочный файл: #include <string>class Account{ private: std::string fullname; std::string number; double balance; public: Account(); Account(const char* client, const char* num, double total = 0.0); ~Account(); void show(); void deposit(double cash); void withdraw(double cash);}; код функции членов: #include <iostream>#include <string>#include "account.h"Account::Account(){ std::cout << "default constructor\n"; fullname = "unknown"; number = "XXXXXXXX"; balance = 0.0;}Account::Account(const char* client, const char* num, double total){ std::cout << "constructor for " << client << "\n"; fullname = client; number = num; balance = total;}Account::~Account(){ std::cout << "destructor for " << fullname << "\n";}void Account::deposit(double cash){ balance += cash;}void Account::withdraw(double cash){ if (balance <= 0) std::cout << "you can't withdraw money, you balance is negative\n"; else balance -= cash;}void Account::show(){ using std::cout; using std::endl; cout << "Client's name: " << fullname << endl << "Client's number: " << number << endl << "Balance: " << balance << endl;} код функции main(): #include <iostream>#include "account.h"int main(){using std::cout;using std::ios_base;cout.precision(2);cout.setf(ios_base::fixed, ios_base::floatfield);cout.setf(ios_base::showpoint);cout << "using constructor for creating new object:\n";Account person("some body", "46271003", 100000.0);person.show();person.deposit(5000.0);person.show();person.withdraw(9000.0);person.show();system("PAUSE");return 0;} Ссылка на комментарий Поделиться на другие сайты Поделиться
Тролль Опубликовано 2 ноября, 2009 Жалоба Поделиться Опубликовано 2 ноября, 2009 Поставь { перед using std::cout; и } после person.show(); и увидишь работу деструктора. Деструктор вызывается при выходе из блока, в котором был вызван конструктор. Ссылка на комментарий Поделиться на другие сайты Поделиться
little_greg Опубликовано 2 ноября, 2009 Автор Жалоба Поделиться Опубликовано 2 ноября, 2009 спасибо, ты классный Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти