Error del compilador C2758Compiler Error C2758

'member': debe inicializarse un miembro de tipo de referencia'member': a member of reference type must be initialized

El error del compilador C2758 se produce cuando el constructor no inicializa un miembro de tipo de referencia en una lista de inicializadores.Compiler error C2758 is caused when the constructor does not initialize a member of reference type in an initializer list. El compilador deja el miembro sin definir.The compiler leaves the member undefined. Las variables de miembro de referencia deben inicializarse cuando se declaran o se les debe dar un valor en la lista de inicialización del constructor.Reference member variables must initialized when declared or be given a value in the initialization list of the constructor.

El siguiente ejemplo genera el error C2758:The following sample generates C2758:

// C2758.cpp
// Compile by using: cl /W3 /c C2758.cpp
struct A {
   const int i;

   A(int n) { };   // C2758
   // try the following line instead
   // A(int n) : i{n} {};
};