Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> C /C + + Programming >> Content
Wat is een virtuele Destructor in C ?
Omdat C + + maakt gebruik van een object - georiënteerd programmeren , of OOP model , als onderdeel van het ontwerp , moet programmeurs vertrouwd zijn met bepaalde OOP concepten zoals klassen en objecten geworden . Wanneer een programmeur wenst een voorwerp voor gebruik in code te ontwikkelen , moet ze functionaliteit van het object te ontwerpen in een "class . " Een klasse definieert de gegevens en functies die een object kan gebruiken . Een specifiek type object functie , de virtuele destructor , voor het gebruik ervan vereist dat een programmeur begrijpen van de rol van destructors in de klassen , het concept van de klasse overerving , en het gebruik van virtuele functies in C + + programmeren . Inheritance

Een kracht van OOP ligt in het concept van overerving . Wanneer een programmeur wil het functioneel van een object uit te breiden , of als er een voorwerp deelt veel van de functioneel van een ander object met slechts kleine verschillen , de programmeur kan een klasse ontlenen aan een ander . Wanneer een klasse afgeleid van een andere klasse ( de "basis "-klasse ) , heeft zij toegang tot de variabelen en functies die gedefinieerd zijn in de eerste klasse. In dit voorbeeld , klasse " bal " is afgeleid van de klasse " sfeer " en breidt zijn functionaliteit

klasse Sphere
{

openbare
: .

Int getRadius
( ) {

return r ;

}

int
r ;

}

klasse Bal
: openbare Sphere {

openbare
: < br >

touwtje kleur ;

}
virtuele functies

Sinds een afgeleide klasse heeft toegang tot alle functies van de basisklasse , het kan ze gebruiken als elk moment alsof het als de basisklasse . Echter , zou de afgeleide klasse in plaats van een functie in de basisklasse te wijzigen om zijn behoeften. Bovendien kan een basisklasse dienen als een sjabloon voor afgeleide klasse . In dit geval zal de basisklasse functies te noemen , zonder te definiëren wat ze doen , in plaats daarvan laat dat aan afgeleide klassen . Een functie in een basisklasse dat niets , in plaats daarvan een afgeleide klasse om het te implementeren verlaten doet , is een functie " virtuele " genoemd .
Destructors

Integrale naar ontwerp bezwaar is de uitvoering van " constructeur " en " sloper " functies . Een constructorfunctie van een klasse bepaalt hoe een object gemaakt van de klasse zelf zal eerst initialiseren ( wat standaard gegevens waarden die zij zullen bevatten, bijvoorbeeld ) . De sloper , daarentegen , bepaalt wat er gebeurt wanneer een object wordt verwijderd uit het geheugen ( de manier waarop de informatie in het verwijderd wordt, bijvoorbeeld) . Dit voorbeeld code laat zien hoe een klasse definieert eerst constructor en destructor functies

klasse Sphere
{

Sphere
( ) ; . //Bouwer

~ Sphere ( ) ; //destructor

}
Virtuele destructors

Want hoe klassen en destructors werk , wanneer een afgeleide klasse wordt uit het geheugen verwijderd , zowel de destructor van de afgeleide klasse en de destructor van de basisklasse moet worden genoemd . Om dit te bereiken , programmeurs creëren virtuele destructors in base classes , die afgeleide klassen kunnen definiëren . Dit voorbeeld toont een basisklasse met een virtuele destructor en een afgeleide klasse met zijn eigen destructor

klasse Sphere
{

Sphere ( ) op ; .

Virtuele ~ Sphere
( ) { }; //de " virtuele " keyword geeft een virtuele klas

}

klasse Bal
: openbare Sphere {

Ball ( ) op ;

~ Bal ( ) : //verwijderen van een " bal " object zal dit destructor en de Sphere destructor

bellen

Previous: Next:
  C /C + + Programming
·Hoe een Sound button in Xcode 
·Hoe maak je een CPP Executable…
·Feiten over CPP Compiler 
·Hoe maak je een USB -printer T…
·Hoe maak je een komma in het d…
·Recursieve functie in C 
·Hoe je het product van een Arr…
·Hoe te Editor Met behulp van O…
·Hoe de MSDN Library in Toegang…
  Related Articles
Hoe maak je een Combo Box Maak in Visual…
Hoe maak je een Check Box Maak in Visual…
Hoe maak je een tekstvak maken in Visual…
Hoe maak je een schijf keuzelijst in Vis…
Hoe kan ik een keuzelijst maken in Visua…
Hoe kan ik een Picture Box Maak in Visua…
Hoe een bestand keuzelijst Maak in Visua…
Hoe maak je Voeg een tekstvak in Visual …
Hoe maak je een Picture Box in Visual Ba…
  Programmering Articles
·Hoe stop ik een Persoon van Coming to My…
·Hoe maak je een Android Game Met behulp …
·Hoe de Marker wijzigen in een Google Map…
·Hoe te Focus instellen op ASP.NET Contro…
·Awk Basics 
·Hoe maak je een tabel in MySQL 
·Hoe te verwijderen van de Last Kind van …
·Hoe maak je een URL wijzigen in een pagi…
·Hoe je netto Twitter PERL Gebruik 
Copyright © Computer Kennis http://www.nldit.com