Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> C /C + + Programming >> Content
Hoe dynamisch toewijzen van een array gebruiken klasse in C + +
In de basis C + + programmeren , variabelen en arrays worden verklaard door de programmeur direct in de code . Echter , bij het bouwen van datastructuren zoals dynamisch resizen arrays , moet de programmeur leren om dynamisch geheugen toewijzen tijdens de uitvoering van de code . Arrays deze wijze toegewezen een aantal voordelen , zoals niet - constante lengte bij verklaring . De programmeur kan arrays van scalaire data types en gebruikers gecreëerde klassen identiek toewijzen . Het gebruik van pointers en zoekwoorden ingebouwd in de standaard bibliotheek , C + + maakt het toewijzen van geheugen en verwijdering ongecompliceerd . Wat je nodig hebt
Text Editor
C /C + + Compiler ( zoals Microsoft Visual Studio of GCC )
Toon Meer Aanwijzingen
1

Maak een pointer van de gegevens typt u de array zal bevatten . Bijvoorbeeld , om dynamisch een array van integers , moet een integer pointer bestaan ​​om te verwijzen naar de array :

int * arr_ptr ;

De wijzer " arr_ptr " zal nu toestaan ​​dat een programmeur om te verwijzen diepe geheugen tijdens de uitvoering. kopen van 2

Gebruik de aanwijzer om geheugen toe te wijzen . De " nieuwe " keyword , die specifiek is voor de C + + -bibliotheken ( en niet verkrijgbaar in standaard C ) beweert geheugen tijdens de uitvoering voor het gebruik van de roeping wijzer :

arr_ptr = new int [ 6 ] ;

Hier , de " nieuwe " keyword pakt een blok van zes integer - en kleinbedrijf secties van het geheugen . Echter , in tegenstelling tot arrays gedeclareerd voordat het uitvoeren, kunnen dynamische arrays worden verklaard met variabele ingang :

int i = 6 ;

arr_ptr = new int [ i ]
;

kan de programmeur arrays die resize gebaseerd kan op behoefte in plaats van vooraf bepaalde ruimte aanwijzing te creëren .
3

Wijs een reeks van door gebruikers gecreëerde data types . Naar aanleiding van C + + toewijzingsprocedure van het geheugen , de programmeur kan arrays van datatypes gedeclareerd in aparte klassen te maken:

int i = 5 ;

newClass * class_ptr ;

class_ptr = new newClass [ i ] ; .

de aanwijzer " class_ptr " zal een variabele van de " newClass " data type , hoogstwaarschijnlijk gedefinieerd in een beschrijving van de klasse in een ander bestand verwijzen
4

Verwijder de array. Als een array niet meer nodig is ( of is gekopieerd naar een andere array , mogelijk tijdens een Heraanpassen ) de programmeur moet ervoor zorgen om het te verwijderen . Toegewezen geheugen dat niet wordt verwijderd , maar niet langer verwezen , kan nemen kostbare geheugen en , na verloop van tijd , want wat bekend staat als een geheugenlek

int i = 5 ; .

NewClass
* class_ptr ;

class_ptr
= new newClass [ i ] ;

delete class_ptr
[ ] ;

Nu , de array waarnaar wordt verwezen door " class_ptr 'wordt verwijderd , en het geheugen vrijgemaakt voor andere toepassingen .

Previous: Next:
  C /C + + Programming
·Hoe te LINQ gebruiken om XML 
·Hoe kan ik een object in Visua…
·Hoe de Strpbrk functie in gebr…
·Hoe schrijf je een C + + -prog…
·Hoe te Increment Nummers op de…
·Hoe maak je een link met Windo…
·Alternatieven voor Boomerang D…
·Hoe het opzetten van Joomla De…
·Hoe om code te schrijven voor …
  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 optie Box in Visual Basi…
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 kan ik een afbeelding Box Maak in Vi…
  Programmering Articles
·Lengte Wijze van input in Java 
·Hoe maak je een online prikbord Creëren…
·MySQL Perl Tutorial 
·Hoe maak je een komma in het display C +…
·Hoe kan ik meerdere tekens vervangen in …
·Hoe je RealPlayer Video -bestanden conve…
·Over Fout Debugging Paths in Perl 
·Hoe kan ik een aanvraag titel in VBA Ver…
·Hoe te wijzigen een Uploaden Timeout in …
Copyright © Computer Kennis http://www.nldit.com