Поделиться через


Ошибка компилятора C3852

"member", имеющий тип "type": статистическая инициализация не удалось инициализировать этот элемент

Замечания

Предпринята попытка назначить инициализацию по умолчанию в рамках статистической инициализации элементу данных, который не может получить инициализацию по умолчанию в агрегатной инициализации.

Example

В следующем примере создается C3852:

// C3852.cpp
struct S
{
   short s;
};

struct S1
{
   int i;
   const S s;
};

struct S2
{
   int i;
   char & rc;
};

int main()
{
   S1 s1 = { 1 };   // C3852 const member
   // try the following line instead
   // S1 s1 = { 1, 2 };

   S2 s2 = { 2 };   // C3852 reference member
   // try the following line instead
   // char c = 'a';
   S2 s2 = { 2, c };
}