Intel Core i7-3770K | NVIDIA Geforce GTX 980 | 16 GB DDR3 | DELL P2415Q | DELL U2711 | DELL U2410
C++: Deklarering av list-objekt
Visa signatur
Hur kan jag deklarera ett list-objekt av en datatyp som får väljas av användaren?
Om användaren väljer int så ska det bildas en list av datatyp int och om denne väljer double så ska en list ha datatypen double.
Jag kan ju inte deklarera en list utan att ange datatyp och om jag gör något i stil med,
if (datatyp == "int")
{
list<int> listan;
}
så existerar den ju bara inom sitt scope och kan inte användas utanför.
Så hur kan jag fixa detta på ett bra sätt?
Jag vill inte deklarera två olika list-objekt för de två datatyperna, jag vill ha endast en och den ska ha ett visst namn (listan).
Anta att användaren knappat in "int" eller "double" och att den strängen sedan sparats i en variabel med namnet datatyp.
Tack på förhand.
Enklast är nog att skapa en unions-typ med de olika typerna som du sen sparar i listan. Sen är det bara att hålla reda på typen när man manipulerar listan.
Intel Core i7-3770K | NVIDIA Geforce GTX 980 | 16 GB DDR3 | DELL P2415Q | DELL U2711 | DELL U2410
Manipuleringarna kommer att ske med template funktioner. Jag vill inte använda unioner.
Copyright © 1999–2023 Geeks AB. Allt innehåll tillhör Geeks AB.
Citering är tillåten om källan anges.