C++ Laat skikkingsgrootte weg


Laat Skikkingsgrootte weg

Jy hoef nie die grootte van die skikking te spesifiseer nie. Maar as jy dit nie doen nie, sal dit net so groot wees soos die elemente wat daarin ingevoeg is:

string cars[] = {"Volvo", "BMW", "Ford"}; // size of array is always 3

Dit is heeltemal in orde. Die probleem ontstaan ​​egter as jy ekstra spasie vir toekomstige elemente wil hê. Dan moet jy die bestaande waardes oorskryf:

string cars[] = {"Volvo", "BMW", "Ford"};
string cars[] = {"Volvo", "BMW", "Ford", "Mazda", "Tesla"};

As jy egter die grootte spesifiseer, sal die skikking die ekstra spasie reserveer:

string cars[5] = {"Volvo", "BMW", "Ford"}; // size of array is 5, even though it's only three elements inside it

Nou kan jy 'n vierde en vyfde element byvoeg sonder om die ander te oorskryf:

cars[3] = "Mazda";
cars[4] = "Tesla";

Laat elemente op verklaring weg

Dit is ook moontlik om 'n skikking te verklaar sonder om die elemente op verklaring te spesifiseer, en dit later by te voeg:

string cars[5];
cars[0] = "Volvo";
cars[1] = "BMW";
...