Система GValue в GLib включает стандартные преобразования типов с использованием дескрипторов GType (на самом деле справочная страница GValue включает в себя некоторый пример кода, который преобразует значение из int в строку).
Однако, как видно из исходного кода gvaluetransform , преобразования из строковых в числовые значения по умолчанию не включены. Я полагаю, что разбор строк в целые числа - довольно распространенная функция. Есть ли конкретная причина, по которой нам нужно вручную предоставлять функции преобразования для разбора строк (возможно, для переносимости)?