Om du vill skapa en massa instanser av ett objekt är det annars lätt att se till att varje objekt håller ett unikt ID (dvs "i") som initieras genom konstruktorn. En annan variant är att göra en samling av instanser och låta "i" representera index i samlingen och på så vis särskilja dem. Nu är jag inte hundra på vad du menar, så förtydliga gärna.
Det du försöker göra ovan skulle innebära att skapa nya typer - om det gick. Tror inte det är det du vill. Du vill väl ha N st instanser av en klass? Om du vill att klassinstansen ska veta vad den heter får du använda en konstruktor som tar argument, annars måste du använda någon dynamisk struktur (array, vektor, lista, ...) som håller rätt på dina instanser åt dig.
Exempel:
public class A {
int namn;
public:
A(int i);
};
A::A(int i) : namn(i) {}
for (int i = 0; i < antal; i++ ) {
A a(i);
....
}
Men troligen vill du väl ha kvar alla antal st när de är skapade? Då kan du t.ex. skriva:
A[] arr = new A[antal];
for (int i = 0; i < antal; i++ ) {
arr = new a(i);
....
}
new gör att objektet inte dör med automatik när du når } utan
att du själv måste ta hand om det med en destruktor.
Vad jag avser göra är att skapa x spelare till mitt kortspel. Jag måste erkänna att jag inte riktigt förstår aasahs förslag, men det är säkert rätt. :) Ska försöka med PeWs metod nu, den verkar vettig.
Fast det funkade inte riktigt som jag tänkt mig :( Om jag inte ska göra om allting, vilket jag inte vill om det kan undvikas, måste jag nog skapa en instans av klassen / spelare. Ska försöka förstå aasahs kod. :e
Vad jag avser göra är att skapa x spelare till mitt kortspel. Jag måste erkänna att jag inte riktigt förstår aasahs förslag, men det är säkert rätt. :) Ska försöka med PeWs metod nu, den verkar vettig.
Vi skrev ju samma saker fast hon skrev pseudokod utan taggar :e