5
Tengo dos clases:¿Por qué el operador de encasillamiento no funciona con la clase heredada?
struct B {};
struct D {
operator B&();
};
Cuando hago;
b = d; // B b; ... D d;
El resultado es conforme a la expectativa a que da derecho D::operator B&()
(Demo).
Si el D
se cambia a,
struct D : B {
operator B&();
};
continuación D::operator B&()
no se invoca (Demo). ¿Está B::B(const B&)
buscando un mejor candidato en D
y D::operator B&()
?