Я хочу преобразовать QStrings в разные типы. Я хотел бы сделать это как можно проще и проще, без необходимости писать явный метод для каждого типа.Преобразование QStrings в другие типы
Я думал использовать шаблонную функцию, что-то вроде этого:
template<typename T>
void getValueFromString(QString str, T& returnVal)
{
returnVal = static_cast<T>(str);
}
Очевидно, что это не работает, но что-то подобное, что я хотел бы иметь.
Есть ли простой способ сделать это?
«Я хочу преобразовать QStrings в разные типы». В каком контексте? Может быть, вы захотите, может быть, вы этого не сделаете: расскажите, какая проблема, которую вы пытаетесь решить. Мотивируйте свой вопрос. –
Все, что я действительно хочу сделать, это вопрос. Вот и все. У меня есть QStrings, я хочу преобразовать их в: int, int64_t, quint32, double, QStrings и т. Д. Действительно любой разумный тип. Я не хочу иметь отдельную функцию для каждого типа, но то, что я показал выше. Как: «Я получаю QStrings, которые читаются из файла, и я хочу их интерпретировать», добавьте больше значения в вопрос? – FreddyKay
Мотивация ответит на очевидные проблемы типа «Итак, вы действительно хотите преобразовать' QString {"五"} 'в' double (5.0) '?" Вы не можете утверждать, что это не преобразование строки в «разумный тип» - это очевидно! Как вы знаете, какой тип * вы хотите преобразовать? И т. Д. Говоря «все, что есть», как вы утверждаете, не помогает. –