Hallo zusammen.
Ich beschäftige mich gerade mit dem Feld der GUI-Programmierung, also Fenster, Unterfenster usw. im Eigenbau und Vollbildmodus sozusagen.
Bei meiner Datenstruktur zum Beschreiben eines Fensters in meiner Klasse fehlt mir noch ein ganz wichtiger Schritt:
Wie entwickle ich eine typ-neutrale Datenstruktur zum Speichern der Daten (Tabellenwerte beispielsweise, also Integer und Long und/oder wchar_t*.. und/oder...) in einem Datentyp?
Mir kam folgender Gedanke:
|
C-/C++-Quelltext
|
1
|
map<wchar_t*, void*> m_Data;
|
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
#include <Windows.h>
#include <iostream>
#include <map>
using namespace std;
int main(void) {
// Möglichst Datentyp-neutrale Map
map<wchar_t*, void*> m_Data;
// Speichern wir mal eine RECT Struktur in der Map (?)
RECT rect = {100,200,500,600};
// Los gehts - RECT "abspeichern"
m_Data[L"rechteck"] = reinterpret_cast<void*>(&rect );
// Nun wieder eine RECT-Struktur aus der Map machen
RECT ausDerMap = *( reinterpret_cast<RECT*>(m_Data[L"rechteck"]));
// fertig
cin.get();
return 0;
}
|
Das Blöde: Ich speichere die Werte ja nicht direkt in der Map, denn ich merke mir hiermit nur die Adressen.
Wer kennt eine typ-Neutralen Standard-Datenstruktur zum Speichern solcher Werte. Auf die Werte sollen mithilfe von wchar_t* oder int zugegriffen werden (wie bei einer Map).
Vielen Dank für jegliche Hilfe
Johannes Schneider