mardi 28 juillet 2015

Visual Studio 2013 - std::enable_if warning 4544

I have written this code

In class in header

template <typename T,
typename = typename std::enable_if<std::is_arithmetic<T>::value, T>::type>
T GetResultValueAsNumber(char * result);

than in inline file

 template <
        typename T,
        typename = typename std::enable_if<std::is_arithmetic<T>::value, T>::type
    >
    T PostgreSQLWrapper::GetResultValueAsNumber(char * result)
    {    
        double value = strtod(result, NULL);

        return static_cast<T>(value);
    };

In Visual Studio 2013 I got this warning (but code works correctly)

warning C4544: '<unnamed-symbol>' : default template argument ignored on this template declaration - see declaration of '<unnamed-symbol>'

What does it mean?

Aucun commentaire:

Enregistrer un commentaire