05.09.2016 Views

Стефан Р. - С++ Для чайников

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Сберегательный счет:<br />

". •/ не удерживать денег при первом снятии со счета за месяц;<br />

S<br />

удерживать 5.00 доллара за каждое последующее снятие.<br />

<strong>Р</strong>ассматривая эту задачу, можно сразу отметить, что главными кандидатами на<br />

роль классов являются Checking и Savings. Поскольку данные-члены лучше сделать<br />

защищенными, нам понадобится несколько функций, обеспечивающих доступ к номеру<br />

и балансу счета.<br />

Как и любой класс, checking и Savings нуждаются в конструкторе, чтобы проинициализировать<br />

объекты правильными значениями (как минимум, обнулить баланс).<br />

Кроме того, понадобятся еще две функции — deposit () (вклад)<br />

и withdrawal () (снятие).<br />

И наконец, в этой программе я добавил еще одну функцию-член, которая называется<br />

display (); она занимается отображением текущего объекта. Это необязательное<br />

требование, однако обычно так и поступают, позволяя объекту самому заниматься<br />

своим отображением, не полагаясь на внешнюю функцию (которой для правильного<br />

отображения может понадобиться информация о внутреннем устройстве класса или<br />

другая информация, которую вы, возможно, не захотите открывать).<br />

Вот текст этой программы.<br />

// BUDGET2.CPP — программа бюджета, основанная на классах.<br />

#include <br />

#include <br />

//максимальное количество счетов<br />

const int maxAccounts = 10;<br />

// Checking — здесь описан чековый счет<br />

class Checking<br />

{<br />

public:<br />

Checking(int initializeAN = 0)<br />

{<br />

accountNumber = initializeAN;<br />

balance = 0.0;<br />

// функции обращения<br />

int accountNo()<br />

{<br />

return accountNumber;<br />

}<br />

double acntBalance()<br />

{<br />

return balance;<br />

)<br />

//функции транзакций<br />

void deposit(double amount)<br />

{<br />

balance += amount;<br />

)<br />

void withdrawal(double amount);<br />

// функция вывода объекта в cout<br />

void display()<br />

{<br />

cout

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!