Recientemente he actuado como un desarrollador, así que me lancé, obtuve un libro en C++ y aprendí a hacer las cosas correctamente. En mi cabeza, sé lo que me gustaría hacer. De hecho, quiero un Interface
que cuando se hereda, debe ser anulado (si esto es posible?). Hasta el momento, tengo el siguiente:constructores/destructores de la clase base abstracta de C++: corrección general
class ICommand{
public:
// Virtual constructor. Needs to take a name as parameter
//virtual ICommand(char*) =0;
// Virtual destructor, prevents memory leaks by forcing clean up on derived classes?
//virtual ~ICommand() =0;
virtual void CallMe() =0;
virtual void CallMe2() =0;
};
class MyCommand : public ICommand
{
public:
// Is this correct?
MyCommand(char* Name) { /* do stuff */ }
virtual void CallMe() {}
virtual void CallMe2() {}
};
propósito que me queda como creo que debería implementarse el constructor/de destructor en ICommand
. Sé que si elimino los comentarios, no compilarán. Por favor, puede alguien:
- Enséñame a declarar el constructor/destructor de en
ICommand
y la forma en que están destinados a ser utilizados enMyCommand
- eso puse las cosas correctamente en
ICommand
modo queMyCommand
debe invalidarCallMe
yCallMe2
.
espero no haber perdido algo muy simple ...
Básicamente debes usar 'std :: string' y el destructor sería' {} '. También aprenda sobre la lista de inicializadores del constructor, y considere si no debería tomar 'const char *. – UncleBens