Tipo de devolución

"Lenguaje de programación C ++ cuarta edición" Capítulo 12.1.4

El tipo de devolución posterior pone el valor devuelto detrás al declarar / definir la función

auto getValue(int value)->int
{
    return value*2;
}

Este uso se utiliza principalmente en plantillas, que a veces no pueden determinar el tipo de valor de retorno:

template<class T1,class T2>
auto getValue(T1 v1,T2 v2)->decltype (v1 + v2)
{
    return v1 + v2;
}

#define debug qDebug()<<
int main(int argc, char *argv[])
{
    debug getValue<int,int>(7,5.5);
    debug getValue<int,double>(7,5.5);
}

 

Si esta función se pasa en dos entradas, el tipo de valor de retorno es int, y si se pasa un int y un doble, el tipo de valor de retorno es doble.

Supongo que te gusta

Origin blog.csdn.net/kenfan1647/article/details/113981548
Recomendado
Clasificación