nieważne SetSize ( int nNewSize, int nGrowBy = -1 );
rzut ( CMemoryException );
Parametry
nNewSize
Nowy rozmiar tablicy (liczba elementów). Musi być większa niż lub równa 0.
nGrowBy
Minimalna liczba gniazd elementu przydzielić jeśli konieczne jest zwiększenie rozmiaru.
Uwagi
Określa rozmiar tablicy puste lub istniejących; przydzielanie pamięci, w razie potrzeby.
Jeśli nowy rozmiar jest mniejszy niż rozmiar starych, następnie tablicy jest obcinany i wszystkie nieużywane pamięci jest zwalniany.
Funkcję tę można stosować, aby ustawić rozmiar macierzy, przed rozpoczęciem korzystania z tablicy. Jeśli nie używasz SetSize, dodawanie elementów do macierzy powoduje jego często ponownie rozdzielone i kopiowane. Częste zmiany alokacji i kopiowanie są nieefektywne i można fragmentuj pamięci.
Parametr nGrowBy wpływa na alokacji pamięci wewnętrznej, podczas gdy rośnie tablicy. Jego użycia nigdy nie wpływa na rozmiar tablicy zgłoszonych przez GetSize i GetUpperBound. Jeśli używana jest wartość domyślna, MFC przydziela pamięć w sposób obliczone do uniknięcia fragmentacji pamięci i zoptymalizować efektywność w większości przypadków.
Omówie&nie CArray |nbsp; Klasa członków | Wykres hierarchii
Zobacz też CArray::GetUpperBound, CArray::GetSize