Resultados da pesquisa a pedido "virtual-destructor"

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 é ...

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 ...

2 a resposta

O que Clang e GCC fazem quando `excluem` classes básicas com destruidores não virtuais?

Já existeuma pergunta [https://stackoverflow.com/q/4522994/1858225]perguntando sobre o comportamento "do mundo real" dedeleteinserir um ponteiro para uma classe base que não possui um destruidor virtual, mas a pergunta é restrita a um caso muito ...

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 ...

3 a resposta

O padrão é tornar as classes `finais 'ou dar a elas um destruidor virtual?

Classes com destruidores não virtuais são uma fonte de erros se forem usadas como classe base (se um ponteiro ou referência à classe base for usado para se referir a uma instância de uma classe filha). Com a adição do C ++ 11 de umfinal estou ...

2 a resposta

As funções virtuais podem ser incorporadas [duplicadas]

6 a resposta

Não construtores virtuais, mas destruidor virtual

Se não temos construtores virtuais, por que temos destruidores virtuais? Os construtores também podem ser virtuais?

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, ...

5 a resposta

á algum motivo específico para usar destruidores não virtuai

omo eu sei, qualquer classe designada para ter subclasses deve ser declarada com destruidor virtual, para que as instâncias de classe possam ser destruídas corretamente ao acessá-las através de ponteiro Mas por que é possível declarar essa ...

3 a resposta

Qual é esse parâmetro extra passado para o destruidor virtual?

Tenho este código: class Class { public: virtual ~Class() {} }; int main() { Class* object = new Class(); delete object; }qual eu compilar com o Visual C ++ 10 e obter essa desmontagem paradelete object declaração delete object; test eax,eax ...