Сделана ли функция "In инициализация члена класса" в C ++ 11? - PullRequest
12 голосов
/ 26 июня 2011

В функции инициализации класса , которая позволяет инициализировать обычные члены внутри самого класса,

struct A {
  int a = 0; // error: ISO C++ forbids in-class initialization of non-const static member ‘a’
};

Это приводит к ошибке в последнем компиляторе gcc-4.6 (с -std=c++0x),Эта функция включена в стандарт C ++ 11 или gcc по-прежнему ее не поддерживает?

1 Ответ

23 голосов
/ 26 июня 2011

Да, это допустимо в C ++ 0x.Есть пример этого в N3290 §12.6.2 / 8:

struct C {
    /* ... */
    int j = 5; // OK: j has the value 5
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...