Resultados da pesquisa a pedido "virtual-destructor"

8 a resposta

ordem de destruição usando virtual

Alguém pode ajudar qual é a ordem de destruição quando estou usando funções virtuais. Começa com a classe base e depois a classe derivada?

1 a resposta

Uma vtable ausente geralmente significa que a primeira função de membro virtual não embutida não tem definição

Tenho certeza de que essa pergunta é duplicada, mas meu código é diferente aqui, a seguir está o meu código. Ele falha com o erro "Símbolos indefinidos", não sei o que está faltando. class Parent { public : virtual int func () = 0; virtual ...

1 a resposta

Um destruidor virtual padrão impede operações de movimentação geradas pelo compilador?

Inspirado no postPor que o destruidor desativa a geração de métodos de movimentação implícitos? [https://stackoverflow.com/questions/33932824/why-destructor-disabling-the-generation-of-implicit-move-functions] , Fiquei pensando se o mesmo se ...

7 a resposta

Por que devo declarar um destruidor virtual para uma classe abstrata em C ++?

Sei que é uma boa prática declarar destruidores virtuais para classes base em C ++, mas é sempre importante declararvirtual destruidores mesmo para classes abstratas que funcionam como interfaces? Forneça alguns motivos e exemplos do porquê.

3 a resposta

Por que os destruidores não são virtuais por padrão [C ++]

Por que o C ++ não torna os destruidores virtuais por padrãopara classes que tenham pelo menos uma outra função virtual? Nesse caso, adicionar um destruidor virtual não me custa nada, e não ter um é (quase?) Sempre um bug. O C ++ 0x resolverá isso?

3 a resposta

Uma interface c ++ deve obedecer à regra dos cinco?

Qual é a maneira correta de declarar métodos de instanciação ao definir uma classe de interface? As classes base abstratas são necessárias para ter um destruidor virtual por razões óbvias. No entanto, o seguinte aviso de compilação é ...

3 a resposta

Vazamento de memória possível sem um destruidor virtual?

#include <iostream> using namespace std; class base { int a; public: base() {a =0;} }; class derv :public base { int b; public: derv() {b =1;} }; int main() { base *pb = new derv(); delete pb; } Eu não tenho um destruidor virtual na classe derv, ...

1 a resposta

LNK2019 - Destruidor virtual na classe abstrata [duplicado]

Possível duplicado: Destruidor virtual puro em C ++ [https://stackoverflow.com/questions/630950/pure-virtual-destructor-in-c] Eu tenho duas classes: a classe abstrata "Game" e a classe "TestGame" derivada. Todas as funções no TestGame são ...

4 a resposta

estrutores padrão virtuais em C ++

Eu tenho um grande conjunto de classes herdadas (critérios) que herdam de uma classe base (critério). Aqui estácriterionódigo de class criterion { public: virtual unsigned __int32 getPriorityClass() const = 0; virtual BOOL include(fileData ...

2 a resposta

desctrutor virtual na classe base abstrata pura

eu tenho struct IMyInterface { virtual method1() = 0; virtual method2() = 0; };O GCC insiste que eu tenho struct IMyInterface { virtual method1() = 0; virtual method2() = 0; virtual ~IMyInterface(){}; };Eu não vejo o porquê. Uma interface pura ...