principes van een eenvoudige C ++ Sequence Container Bibliotheek sequenties in C ++ vereenvoudigd - Deel 2 Divisie 1 Inleiding Dit is het deel 2 van mijn reeks, Containers Bibliotheek sequenties in C ++, vereenvoudigd. Je moet deel 1 hebben gelezen voordat het lezen van dit onderdeel. In dit deel van de serie, kijken we naar de beginselen van een eenvoudige C ++ Sequence Container. Opmerking: Als u de code niet kunt zien of als u denkt dat er iets ontbreekt (gebroken link afbeelding afwezig), neem dan contact met mij op [email protected].
Dat wil contact met mij op voor het geringste probleem dat je hebt over wat je aan het lezen bent. Een aantal regels betreffende de lijst zal ik een eenvoudige C ++ container juiste te creëren, in het volgende deel van de serie. Er zijn een aantal regels met betrekking tot de array in het dynamisch geheugen, dat je moet herinneren of te leren. We kijken naar hen voor de rest van deze tutorial. Het creëren van een Array in Dynamic Memory De volgende verklaring, gekopieerd van de klasse constructor bovenstaande creëert een array in dynamisch geheugen.
T * listPtr = new T [noIniCells]; T is een tijdelijke aanduiding voor het type object als u te maken met een sjabloon. Als je niet te maken hadden met een sjabloon, dan zou T zijn zeggen, int of char of drijven, etc. Toegang tot een Element Voor een int array, als u de nieuwe waarde van een element wilt, zeggen van de index 3 te 17 u zou de verklaring typen: listPtr [3] = 17; U gebruikt de aanwijzer en de vierkante haken; u niet de aanwijzer met een * voor de waarde vooraf; de vierkante haken zorgen dat. Voor de eenvoudige tank, zullen we een iets andere manier toegang tot waarden.
Het verhogen van de grootte van Dynamic Array U kunt de grootte, één element tegelijk te verhogen. Om dit te doen, gebruik maken van de pointer met de index van de te verwachten volgende element om naar de volgende element. Als de bovenstaande array 5 elementen aanvankelijk, betekent dit dat de hoogste index 4. Indien de array van integers, de grootte van de matrix met één te verhogen en geeft de waarde 26 aan het nieuwe element Typ de verklaring: listPtr [5 ] = 26; Is Dynamic Memory beschikbaar? Dynamisch geheugen (gratis winkel) zijn mogelijk niet beschikbaar wanneer u dat wilt.
Dus je moet controleren of dynamisch geheugen beschikbaar is voordat u de array te maken en ook controleren of deze beschikbaar is voordat u een nieuw element toe te voegen. De volgende code controleert en maak d