structures objects inherit herence declaring data c++ reference member

objects - herence c++



El constructor para '''' debe inicializar explícitamente el miembro de referencia '''' (1)

Necesita usar la lista de inicializadores del constructor:

CamFeed::CamFeed(ofVideoGrabber& cam) : cam(cam) {}

Esto se debe a que las referencias deben referirse a algo y, por lo tanto, no pueden construirse por defecto. Una vez que está en el cuerpo constructor, todos sus miembros de datos se han inicializado. Your this->cam = cam; línea sería realmente una asignación, asignando el valor al que hace referencia la cam a lo que sea que this->cam refiera.

Tengo esta clase

class CamFeed { public: // constructor CamFeed(ofVideoGrabber &cam); ofVideoGrabber &cam; };

Y este constructor:

CamFeed::CamFeed(ofVideoGrabber &cam) { this->cam = cam; }

Obtengo este error en el constructor: el constructor para '''' debe inicializar explícitamente el miembro de referencia ''''

¿Cuál es una buena forma de evitar esto?