Een klasse voor een betaalkaart.
Gegeven het UML klassendiagram van de klasse CreditCard.
Een CreditCard-object
heeft drie attributen, name, id en credit. Het
attribuut name is een pointer die het adres bevat
van het stukje geheugen waarin de naam van de eigenaar van de kaart is opgeslagen. Het
attribuut id bevat het identificatienummer van de
kaart en het attribuut credit bevat het bedrag dat
nog maximaal met de kaart kan worden betaald. (Vergeet niet bij het aanvragen van het
geheugen voor de naam, dat ook een 0-karakter
moet worden opgeslagen!)
De klasse CreditCard heeft een constructor
met een const char *, een
int en een double parameter, die een kopie
van de aangeleverde naam maakt in een voldoende groot stuk geheugen en het id en een bedrag
opslaat in het nieuwe object.
De klasse CreditCard heeft een methode print() die de naam, het id en het krediet van
het CreditCard-object naar cout stuurt. Verder heeft de klasse een methode
getCredit() die het krediet van de kaart
aflevert en methoden pay(amount) en load(amount) die respectievelijk een bedrag van
de kaart afschrijven of bijschrijven.
Indien het af te schrijven bedrag groter is dan het krediet, gaat de afschrijving niet
door, maar wordt een foutmelding gegeven!
Het volgende moet worden gedaan: