ERLEDIGT
JA
JA
ANTWORTEN
10
10
ZUGRIFFE
1945
1945
EMPFEHLEN
-
04.06.08 20:01 #1
- Registriert seit
- Jun 2008
- Beiträge
- 4
Hallo,
ich wüsste gerne, ob es mit C++ eine einfache Methode gibt um alle Objekte einer Klasse anzusprechen.
Ich habe eine Klasse und ich würde gerne alle Objekte dieser Klasse nacheinander auslesen.
Die Namen der Objekte sind unbekannt.
Ich kenne das von MySql mit dem Select-Befehl (nur das dieser eben für Tabellen ist
)
Vielen Dank im Voraus,
Lord-x-DArK
-
Ich habe das Gefühl du wirfst da irgendwie Begriffe durcheinander...
Aber so wie ich das verstanden habe willst du eine Methode die alle Member-Variablen einer Klasse ausließt?
Warum schreibst du dir nicht einfach eine?
Pack einfach alles in einen Container (Vector, list, array....) und geb den zurück
"2 Dinge sind Unendlich, die Menschliche Dummheit und das Universum, bei 2tem bin ich mir noch nicht ganz sicher", Albert Einstein
"Wenn man keine Ahnung hat, einfach mal Fresse halten", Dieter Nuhr
-
Falls du eine Variable in jedem Objekt auf einmal ändern möchtest: Schreib vo dir Variable static hin
zb int k in klasse d
d::k=4;
jetzt haben alle objekte den vierer drin
-
05.06.08 14:49 #4
- Registriert seit
- Jun 2008
- Beiträge
- 4
Sorry, wenn ich ich mich unverständlich ausgedrückt habe.
Ich versuche es an einem Beispiel zu verdeutlichen:
Ich habe die Klasse
class Klasse { ... };
und die Objekte
Klasse a;
Klasse b;
ich würde jetzt gerne auf a und b zugreiffen, das Programm kennt aber ihre Namen nicht
(also nix mir a.zahl = 5).
Am besten in einer while/for - Schleife, welche alle Objekte mit der Klasse "Klasse" nacheinander durchgeht.
Trotzdem vielen Dank für eure Antworten,
Lord-x-DArK
-
So Hundert Prozentig habe ich immer noch nicht verstanden, du kannst schlicht und einfach nicht auf ein Objekt oder eine Variable zugreifen, deren Name du nicht kennst. Höchstens per Zeiger, aber dann musste auch vorher mal der Name gewusst sein.
"2 Dinge sind Unendlich, die Menschliche Dummheit und das Universum, bei 2tem bin ich mir noch nicht ganz sicher", Albert Einstein
"Wenn man keine Ahnung hat, einfach mal Fresse halten", Dieter Nuhr
-
@Lord-x-DArK
Du solltest evt. mal etwas genauer beschreiben, wozu du das brauchst. Objekte, die du an irgendeiner Stelle erzeugst, werden ja (in der Regel) einer Variablen zugewiesen und die sollte dir bekannt sein. Außerdem musst du immer auch den Gültigkeitsbereich (Scope) beachten, d.h. erzeugte Objekte (auch wenn der Name bekannt ist) sind nicht unbedingt immer an jeder Stelle des Programmes verfügbar.
Gruß
MCoder"The three chief virtues of a programmer are: Laziness, Impatience and Hubris."
--- Larry Wall
-
Was hast du denn eigentlich mit jedem objekt vor?
-
Ich glaub ich weiß was er machen möchte. Er möchte von einer Klasse nach einer anderen Klasse zugreifen oder ggf. Klassen verschachteln.. Das wichtigste dabei ist, dass du dann eigentlich die Methoden auf public setzen müsstest wenn es keine verschachtelte Klasse sein sollte. Hier hab ich einen Link der dir alles viel besser erklärt
http://www.math.uni-wuppertal.de/~ax...p/oop23_6.html
-
06.06.08 14:43 #9
- Registriert seit
- Jun 2008
- Beiträge
- 4
Hallo,
ich bin dabei, ein kleines OpenGl Framework zu schreiben.
Dafür gibt es eine Klasse, mit der Objekte definiert werden (Position, Farbe, Texturen ...),
In der Render-Loop solle jetzt eine Funktion (UpdateObjects) aufgerufen werden die alle Objekte, die mit dieser Klasse erzeugt/definiert wurden, nacheinander ausließt und die OpenGl Befehle passend aufruft. Die Funktion weiß aber nicht, welche Variablen alle mit dieser Klasse definiert wurden.
Ich will also nicht für alle neuen Variablen die Funktion neu schreiben.
-
tjoa..
Du müsstest im Konstruktor der Klasse die Funktion aufrufen, um beim erstellen der Variablen müsstest du einfach nur einen kleinen zusätzlichen Schritt machen und die Referenzen übergeben (am besten in ein Vector laden) und den letzten Schritt (was du am Ende machen möchtest) machst du in der Schleife..
So ungefähr müsste es gehen, ich kann schon im voraus sagen, dass du aufjedenfall viel mit Zeigern arbeiten werden müsstest.
-
12.06.08 15:35 #11
- Registriert seit
- Jun 2008
- Beiträge
- 4
Vielen Dank,
habs jetzt mit ner Liste gemacht.
Ähnliche Themen
-
Mit einer Klasse Objekte für eine andere Klasse erstellen.
Von New2Java im Forum Java GrundlagenAntworten: 14Letzter Beitrag: 21.11.10, 12:37 -
Zugriff auf objekte in einer List mit hql
Von eddie_the_great im Forum JavaAntworten: 0Letzter Beitrag: 07.05.09, 20:56 -
Zugriff auf eine Klasseninstanz innerhalb einer Funktion einer anderen Klasse?
Von Bailor im Forum PHPAntworten: 4Letzter Beitrag: 09.07.05, 00:19 -
In einer Klasse alle Objekte verwalten
Von p-flash im Forum Flash PlattformAntworten: 1Letzter Beitrag: 05.06.05, 17:40 -
[C++] Variable in einer Klasse soll für alle Objekte gleich sein
Von Tobias K. im Forum C/C++Antworten: 8Letzter Beitrag: 24.01.05, 08:35





Zitieren


Login






