Ich möchte QStrings in verschiedene Typen konvertieren. Ich möchte das so generisch und einfach wie möglich machen, ohne für jeden Typ eine explizite Methode schreiben zu müssen.Konvertiere QStrings in andere Typen
Ich dachte an einer Template-Funktion, so etwas wie dies mit:
template<typename T>
void getValueFromString(QString str, T& returnVal)
{
returnVal = static_cast<T>(str);
}
Offensichtlich ist dies nicht funktioniert, aber so etwas wie die Ich mag haben würde.
Gibt es eine einfache Möglichkeit, das zu tun?
"Ich möchte QStrings in verschiedene Typen konvertieren." In welchem Kontext? Vielleicht willst du das, vielleicht auch nicht: erzähle uns, was das größere Problem ist, das du lösen willst. Motiviere deine Frage. –
Alles, was ich wirklich tun möchte, ist in der Frage. Das ist alles was es gibt. Ich habe QStrings, ich möchte sie zu konvertieren: int, int64_t, quint32, doppelt, QStrings, etc. wirklich jeden vernünftigen Typ. Ich möchte keine separate Funktion für jeden Typ haben, sondern etwas, das ich oben gezeigt habe. Wie funktioniert das: "Ich bekomme QStrings, die aus einer Datei gelesen werden und ich möchte sie interpretieren", fügen Sie der Frage mehr Wert hinzu? – FreddyKay
Motivation würde offensichtliche Probleme wie "Also, Sie wollen wirklich konvertieren die' QString {"五"} 'zu' double (5.0) '?" Sie können nicht behaupten, dass dies nicht eine Zeichenfolge in einen "vernünftigen Typ" konvertiert - es ist offensichtlich! Woher weißt du * was * Typ du konvertieren willst? Etc. Das Sagen "das ist alles da ist", wie Sie behaupten, ist nicht hilfreich. –