Инициализация конструктора до 0 использование
я не знаю, как использовать инициализацию конструктора до 0 (нуля), как в следующей программе
Что я уже пробовал:
когда я запускаю следующую программу, sa всегда равен 0, чего не должно быть
class bank { private: double a,sa; char ac,c,s; public: void deposit(double amount, char account); }; void bank::deposit(double amount, char account) { a=amount, ac=account; if (ac=='s') { sa=sa+a; cout<<sa; } } main() { char account; double amount; clrscr(); bank b; cout<<"enter account type: "; cin>>account; cout<<"enter amount:" ; cin>>amount; b.deposit(amount, account); getch(); }
но когда я добавлю
/*bank() { sa=0; }*/
как и в следующей программе, она показывает правильный sa, то есть следующая программа показывает правильный результат.
class bank { private: double a,sa; char ac,c,s; public: bank() { sa=0; } void deposit(double amount, char account); }; void bank::deposit(double amount, char account) { a=amount, ac=account; if (ac=='s') { sa=sa+a; cout<<sa; } } main() { char account; double amount; clrscr(); bank b; cout<<"enter account type: "; cin>>account; cout<<"enter amount:" ; cin>>amount; b.deposit(amount, account); getch(); }
так,
может ли кто-нибудь просветить меня, что толку от этого?:-
bank() /*{ sa=0; }*/