다음을 통해 공유


CListBox::InitStorage

목록 상자의 항목을 저장 하는 메모리를 할당 합니다.

int InitStorage(
   int nItems,
   UINT nBytes 
);

매개 변수

  • nItems
    추가할 항목의 수를 지정 합니다.

  • nBytes
    항목에 문자열을 할당할 바이트 메모리 양을 지정 합니다.

반환 값

실패 한 최대 항목 경우 메모리 재할당을 필요 하기 전에 목록 상자를 저장할 수 있습니다 LB_ERRSPACE, 메모리가 부족 하 여 의미 사용할 수 있습니다.

설명

많은 수의 항목을 추가 하기 전에이 함수를 호출 하는 CListBox.

이 함수 속도 항목 (100 개 이상의) 많은 목록 상자를 초기화 하는 데 도움이 됩니다.지금 그 후속 메모리 양을 지정한를 preallocates AddString, InsertString, 및 Dir 최단 시간 함수를 사용 합니다.예상 매개 변수를 사용할 수 있습니다.과 대 평가 하는 경우 일부 추가 메모리가 할당 됩니다. 과소 평가 하는 경우 기본 할당 미리 할당 된 크기를 초과 하는 항목에 대해 사용 됩니다.

Windows 95/98만:에 nItems 매개 변수는 16 비트 값으로 제한 합니다.따라서 두 개 이상의 32767 항목 목록 상자를 사용할 수 없습니다.항목 수가 제한 되어 있지만 목록 상자에 있는 항목의 총 크기는 사용 가능한 메모리에 의해서만 제한 됩니다.

예제

// Initialize the storage of the list box to be 256 strings with
// about 10 characters per string, performance improvement.
int n = m_myListBox.InitStorage(256, 10);
ASSERT(n != LB_ERRSPACE);

// Add 256 items to the list box.
CString str;
for (int i = 0; i < 256; i++)
{
   str.Format(_T("item string %d"), i);
   m_myListBox.AddString( str );
}

요구 사항

헤더: afxwin.h

참고 항목

참조

Clistbox 클래스 클래스

계층 구조 차트

CListBox::CListBox

CListBox::Create

CListBox::ResetContent

LB_INITSTORAGE