Zugriff auf alle Elemente einer QMap?

Alles rund um die Programmierung mit Qt
Antworten
pfotenpo
Beiträge: 33
Registriert: 17. Februar 2008 15:07

Zugriff auf alle Elemente einer QMap?

Beitrag von pfotenpo »

Hallo,

ich habe eine QMap angelegt (QMap<QString, ownType> newMap). So weit so gut. Jetzt kann ich mir ja schön alle keys mit einmal ausgeben lassen (keys()) und alle values (values()). Alles wunderbar. Bei values() bekomm ich ja ne Liste mit meinem eingenen Datentyp. Dieser sieht wie folgt aus:

Code: Alles auswählen

struct ownType
{
    QString name;
    int number;
}
Wie bekomm ich denn eine Liste mit beispielsweise allen numbers??
Ich will im Prinzip einfach einmal alle keys, einmal alle names und einmal alle numbers. Ich nehme an das eine QMap dafür geeignet ist, richtig?
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Hier ist doch ein gutes Beispiel wie man über Elemente in der Map iteriert: http://doc.trolltech.com/4.3/qmap.html#details
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Wenn du alle ownTypes hast, kannst du doch jederzeit nur auf den "number"-Member zugreifen. Verstehe da dein Problem nicht.
pfotenpo
Beiträge: 33
Registriert: 17. Februar 2008 15:07

Beitrag von pfotenpo »

@franzf: wenn du mir kurz nen Hinweis geben könntest wie ich das mache. das wäre spitze.
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

pfotenpo hat geschrieben:@franzf: wenn du mir kurz nen Hinweis geben könntest wie ich das mache. das wäre spitze.
Hast du doch schon selbst geschrieben:
Jetzt kann ich mir ja schön alle keys mit einmal ausgeben lassen (keys()) und alle values (values()). Bei values() bekomm ich ja ne Liste mit meinem eingenen Datentyp.
values() sind von deinem "ownType". Jetzt kannst du, wenn du über die values() iterierst (die Elemente durchgehen) nur auf dein "number"-Element zugreifen. Sollte doch eigentlich reichen, oder?
Antworten