| using namespace System; /*1*/ public ref class Deposit sealed : Transaction { /*2*/ Decimal amount; int toAccount; public: /*3a*/ Deposit(double amount, int toAccount) : Transaction(TransactionType::Deposit) { DepositAmount = Decimal(amount); DepositToAccount = toAccount; } /*3b*/ Deposit(Decimal amount, int toAccount) : Transaction(TransactionType::Deposit) { DepositAmount = amount; DepositToAccount = toAccount; } property Decimal DepositAmount { Decimal get() { return amount; }; private: void set(Decimal value) { amount = value; } } property int DepositToAccount { int get() { return toAccount; }; private: void set(int value) { toAccount = value; } } /*4*/ void PostTransaction() { Console::WriteLine("{0} -- {1}", DateTimeOfTransaction, this); } virtual String^ ToString() override { /*5*/ return String::Format(" Dep: {0,10:0.00} {1,10}",DepositAmount, DepositToAccount); } }; |