Глава 22. Обработка исключительных ситуаций 621
void SetDate(const strings strNewDate)
( strDate = strNewDate; } void SetDescription(const strings strNewDescription)
{ strDescription = strNewDescription; } void SetExpenseAmount(float NewExpenseAmount)
{ ExpenseAmount = NewExpenseAmount; }
string GetDatef) const { return strDate; }
string GetDescription() const { return strDescription; }
float GetExpenseAmount() const { return ExpenseAmount; }
private:
string strDate;
string strDescription;
float ExpenseAmount;
};
ostreams operator«(ostreams ostr, const Expenses employee);
istreams operator»(istreams istr. Expenses employee);
#endif
На листинге 22.28 показан исходный файл Expense.cpp, содержащий реализацию класса Expense.
// Необходимые заголовки #include <expense.h>
Expense::Expense() :
ExpenseAmount(0.OF) ( )
ostreams operator«(ostreams ostr, const Expenses'expense)
(
ostr « expense.GetDatef) « " ";
ostr « expense.GetDescriptionO « "\n";
ostr « expense.GetExpenseAmount() « " ";
return ostr;
istreams operator»(istreams istr. Expenses expense) {
char TempBuffer[256];
float TempFloat;
istr » TempBufter;
expense.SetDate(TempBuffer) ;
istr.getline(TempBuffer, 256);
expense.SetDescription(TempBuffer);