С MapBox :: вариант (https://github.com/mapbox/variant/blob/master/include/mapbox/variant.hpp), я могу сделать следующее:Как получить MapBox :: Util :: значение вариант в шаблонных функции
using variant = mapbox::util::variant<Args...>;
variant<std::string> v;
// do something with v
...
// Get string from v:
std::string s = v.get<std::string>();
Но когда я пытаюсь осуществить это с помощью шаблона функция, я получил ошибку компиляции:
template <typename T>
T getValue()
{
variant<T> value{};
// Get value
...
return value.get<T>();
}
GCC жалуется:
../utils.hpp:52:23: error: expected primary-expression before '>' token return value.get(); ^../utils.hpp:52:25: error: expected primary-expression before ')' token return value.get();
Что с шаблоном функц ион?
делает value.template получить(); Помогите? –
Woops, да, это помогает. Пожалуйста, разместите его как ответ, чтобы я мог отметить его правильно. – Mine