C ++ 11 - Deklarieren von nicht statischen Datenelementen als 'auto'

Kann man in C ++ 11 nicht statische Datenelemente als 'auto' deklarieren, wenn sie in der Deklaration initialisiert werden? Zum Beispiel:

struct S
{
    auto x = 5;  // in place of 'int x = 5;', which is definitely allowed
};

GCC 4.7 lehnt den obigen Code ab, während er akzeptiertint x = 5;.

Angenommen, dies ist kein Compiler-Fehler, aber der Standard lässt dies wirklich nicht zu. Warum nicht? Dies wäre genauso nützlich wie die Deklaration lokaler Variablenauto.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage