Im einfachsten Fall heisst das einfach, das du eine public Methode implementierst, welche dann eine private Methode der Klasse aufruft. Oder auch nur eine beliebige andere.
Ein oberflächliches Beispiel
ganz böse, von dem Vektor sollte der "Aussenstehende" nix mitbekommen. Mal abgesehen davon, dass Membervariablen NIEMALS public sein sollten ....
|
C-/C++-Quelltext
|
1
|
InventoryManager.mItemVector[0].addItem(32);
|
besser (und im Prinzip schon fast akzeptabel), der Nutzer muss dann aber wissen, das das Inventarobjekt die addItem Methode hat. Im Besten Fall sollte es reichen wenn er in der Lage ist den Manager zu bedienen OHNE Kenntnis von der Inventoryklasse zu haben!
|
C-/C++-Quelltext
|
1
|
InventoryManager.getItem(0).addItem(32);
|
vollständig gewrappt
|
C-/C++-Quelltext
|
1
2
3
|
//Param 1 = Inventory ID
//Param 2 = Item ID
InventoryManager.addItem(0, 32);
|
Ausserdem solltest du Methoden wie "addInventory" oder dergleichen bereitstellen. Oder soll der Anwender diese Objekte selber konstruieren und dann dem Manager übergeben? Was ist wohl "komfortabler"? (es ist aber nicht falsch diese Möglichkeit bereitzustellen! Einfach die Methode überladen.)