Hay este código:Asignación herencia operador
#include <iostream>
class Base {
public:
Base(){
std::cout << "Constructor base" << std::endl;
}
~Base(){
std::cout << "Destructor base" << std::endl;
}
Base& operator=(const Base& a){
std::cout << "Assignment base" << std::endl;
}
};
class Derived : public Base{
public:
};
int main (int argc, char **argv) {
Derived p;
Derived p2;
p2 = p;
return 0;
}
La salida después de la compilación por g ++ 4.6:
Constructor base
Constructor base
Assignment base
Destructor base
Destructor base
¿Por qué operador de asignación de clase base se llama Altough se dice que operador de asignación no es ¿heredado?
posible duplicado de [Problema con la herencia del operador = en C++] (http://stackoverflow.com/questions/3882186/trouble-with-herititance-of-operator-in-c) –