Programação  
 
Conhecimento computador >> Programação >> C /C + + programação >> 
O que é um destrutor virtual em C
? Porque C + + usa uma programação orientada a objetos , ou modelo de POO , como parte de seu projeto , os programadores devem se familiarizar com alguns conceitos de POO como classes e objetos. Quando um programador deseja desenvolver um objeto para uso no código, ela deve projetar a funcionalidade do objeto em uma "classe". Uma classe define os dados e funções que um objeto pode usar. Um tipo específico de função de objeto , o destrutor virtual, para o seu uso exige que um programador entender o papel de destruidores nas aulas , o conceito de herança de classe , eo uso de funções virtuais em programação C + +. Herança

A força da OOP reside no conceito de herança . Quando um programador deseja estender a funcionalidade de um objeto, ou se um objeto compartilha grande parte da funcionalidade de um outro objeto com apenas pequenas diferenças , o programador pode derivar uma classe de outra . Quando uma classe deriva de outra classe (a classe "Base "), ele tem acesso às variáveis ​​e funções definidas na primeira classe. Neste exemplo , a classe "bola" deriva da classe " esfera " e estende sua funcionalidade

classe Sphere {

público : .

Int getRadius () {

retornar r;

}

int r;

}

Bola classe : Esfera pública {

público :

cor string;

}
funções virtuais

Desde uma classe derivada tem acesso a todas as funções da classe base, ele pode usá-los como qualquer momento, como se agisse como a classe base . No entanto , a classe derivada pode modificar , em vez de uma função na classe base para atender às suas necessidades. Além disso, uma classe base pode servir como um modelo para a classe derivada. Neste caso , a classe base irá nomear funções sem definir o que fazer, em vez de deixar que a classes derivadas. Uma função em uma classe base que não faz nada , em vez de deixar uma classe derivada para implementá-lo , é chamada de função "virtual".
Destruidores

Integral ao objeto do projeto é a implementação de " construtor " e funções " destruidor " . A função de construtor de uma classe define como um objeto criado a partir da classe irá inicializar primeiro em si ( que valores de dados padrão, ele irá conter , por exemplo) . O processo de destruição , pelo contrário, determina o que acontece quando um objeto é excluído da memória ( como a informação em que é excluída, por exemplo). Este código de exemplo mostra como uma classe define primeiro construtor e destruidor funções

Sphere classe {

Sphere (); . //Construtor

~ Sphere ( ) //destructor

}
destruidores Virtual

por causa de como as classes e destruidores trabalhar , quando uma classe derivada é apagada da memória , tanto o destruidor do derivado classe eo destrutor da classe base deve ser chamado. Para conseguir isso , os programadores criar destruidores virtuais em classes de base , que as classes derivadas podem definir. Este exemplo mostra uma classe base com um destrutor virtual e uma classe derivada com o seu próprio destruidor

classe Sphere {

Sphere (); .

~ Esfera virtual () { } //a palavra-chave "virtual" denota uma classe virtual

}

Bola classe : Esfera pública {

Ball ( );

~ Bola () : //exclusão de um objeto "bola" vai chamar este processo de destruição e destruidor Sphere

Anterior :

Próximo : No
  Os artigos relacionados
·Quais são propriedades parciais 
·Como abrir um arquivo em C + + para leitura 
·Conceitos básicos do computador em Turbo C + + 
·Qual é o significado de ANSI 
·Como obter um número par no CPP 
·Como entrada uma string do teclado 
·Como apagar um buffer de recepção do soquete em C 
·Como introduzir uma mistura de números e letras de um …
·Como começar um argumento de entrada ARGV em C + + 
·Como usar LINQ em WPF 
  Artigos em destaque
·Como obter o produto de uma matriz em C + + 
·Como começar um argumento de entrada ARGV em C + + 
·Como fazer um C + + Janela Principal Sem uma barra de t…
·Como acessar uma estrutura de C Fortran 
·Como introduzir uma mistura de números e letras de um …
·Como alocar memória na pilha usando C + + 
·O uso de um padrão Construtor C 
·Como importar códigos com SVN Xcode 3.2 
·Convertendo Char Buffer para dobrar em C + + 
·Como escrever uma linha de switches combinação de tec…
Cop e direita © Conhecimento computador http://ptcomputador.com Todos os Direitos Reservados