11
Perché non compila:
Potrebbe esserci un problema con un string
come tipo di ritorno?La funzione di ritorno di constexpr non viene compilata
constexpr std::string fnc()
{
return std::string("Yaba");
}
Grazie, non lo sapevo prima. – smallB
+1 e la ragione per cui quel costruttore non può essere "constexpr" è che ha effetti collaterali (cioè allocazione) che non possono essere eseguiti in fase di compilazione. –
Ma non pensi che questo sia (questo particolare esempio) un po 'sciocco? la stringa letterale è const, quindi penso che il codificatore di string debba essere reso constexpr in modo da consentire tali costrutti in futuro. – smallB