Die Speicherung von Klasse-Objekt in ein array

Schauen Sie sich bitte die folgenden:

dispenserType type[4];
dispenserType appleJuice();
type[0] = appleJuice;
dispenserType orangeJuice();
type[1] = orangeJuice;
dispenserType mangoLassi();
type[2] = mangoLassi;
dispenserType fruitPunch();
type[3] = fruitPunch;

wie Sie sehen können, habe ich gespeichert, die verschiedene Objekte in der type array.

Den dispenserType Klasse hat einen Konstruktor, legt die Anzahl der items auf 20.
so haben wir int numberfItems für das Objekt appleJuice auf 20 festgelegt und so weiter und so Fort.

Die gleiche Klasse hat auch die folgenden Methoden: Methode, sinkt die numberOfItems durch eine:

void dispenserType::makeSale()
{
    numberOfItems--;
}
int dispenserType::getNoOfItems() const
{
    return numberOfItems;
}

Wenn Sie zum Beispiel die folgenden genannt:

appleJuice.makeSales
cout << appleJuice.getNoOfItems() << endl;

dann würde das Programm zeigt die richtige numberOfItmes 19. Auf der anderen Seite, wenn cout<<type[0].getNoOfItems() genannt wird, dann wäre es die Anzeige der Nummer 20.

Dieses Verhalten führt mich zu glauben, dass appleJuice und type[0] sind zwei separate Objekte.

Meine Fragen ist, gibt es eine Möglichkeit, erstellen Sie ein array von Objekten, ohne sich zu deklarieren, die ein Objekt und speichern in einem array, wie ich es gemacht habe wie ich es Tat?

danke.

  • Dein code gar nicht kompilieren. Können Sie nach ein paar realistisch-code, einschließlich der Erklärung von type?
InformationsquelleAutor user3397856 | 2014-03-09
Schreibe einen Kommentar