que tiene una función como estaadvertencia: regresar referencia a
const string &SomeClass::Foo(int Value)
{
if (Value < 0 or Value > 10)
return "";
else
return SomeClass::StaticMember[i];
}
consigo warning: returning reference to temporary
. ¿Porqué es eso? Pensé que los dos valores que devuelve la función (referencia a const char * "" y referencia a un miembro estático) no pueden ser temporales.
Una buena respuesta! He aquí por qué creo que C++ no es una buena opción para los desafíos actuales de programación. Te consumirá tiempo cuidando sus trabajos internos cuando prefieras concentrarte en el problema de las manos. –
@Luis: todos los idiomas que desea mencionar tienen estos inconvenientes en casos de esquinas. –
¡Parecería que la conversión * es * deseada aquí! : P Una vez que cambias a regresar por valor, la const debe ser eliminada también. –