SetSize

privatevoid SetSize ( Int nNewSize, Int nGrowBy = -1 );
werfen ( CMemoryException );

Parameter

nNewSize

Die neuen Array-Größe (die Anzahl der Elemente). Muss größer als oder gleich 0 sein.

nGrowBy

Die minimale Anzahl der Element-Steckplätze zugeordnet werden, wenn eine Größensteigerung notwendig ist.

Bemerkungen

Legt die Größe des ein leeres oder vorhandenes Array; reserviert Speicher, ggf.

Wenn die neue Größe kleiner als die alte Größe ist, dann das Array wird abgeschnitten, und alle nicht verwendeten Speicher wird freigegeben.

Verwenden Sie diese Funktion, um die Größe des Arrays festzulegen, bevor Sie beginnen mit dem Array. Wenn Sie keine SetSizeverwenden, bewirkt Ihr Array Elemente hinzufügen häufig neu reserviert und kopiert werden. Häufige Umschichtung und kopieren sind ineffizient und können Speicher fragmentiert.

Der nGrowBy -Parameter beeinflusst interne Speicherzuordnung während das Array wächst. Ihre Verwendung wirkt sich nie die Arraygröße wie GetSize und GetUpperBoundberichtet. Wenn der Standardwert verwendet wird, reserviert MFC so berechnet zu vermeiden Speicherfragmentierung und Optimierung der Effizienz für die meisten Fälle.

CArray ÜbersichtMember der Klasse | Hierarchiediagramm

Siehe auch&Nbsp;CArray::GetUpperBound, CArray::GetSize

Index