문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문
Visual Studio 2017을 사용하는 것이 좋습니다.

자동 개체 초기화

저장소 클래스 auto 또는 register의 개체에 대한 선언문이 실행될 때마다 초기화가 수행됩니다. continue 문에서 가져온 다음 예제에서는 do 루프 안에서 자동 개체 ch의 초기화를 보여 줍니다.

// initialization_of_automated_objects.cpp
#include <conio.h>
#include <string.h>

// Get a character that is a member of the zero-terminated
//  string, szLegalString. Return the index of the character
//  entered.
int GetLegalChar( char *szLegalString )
{
    char *pch;

    do
    {
        // This declaration statement is executed once for each
        //  execution of the loop.
        char ch = _getch();

        if( (pch = strchr( szLegalString, ch )) == NULL )
            continue;

        // A character that was in the string szLegalString
        //  was entered. Return its index.
        return (pch - szLegalString);
    } while( 1 );
}
int main()
{
}

루프의 각 반복에서(선언이 발견될 때마다) _getch 매크로가 평가되고 ch가 해당 결과로 초기화됩니다. return 문을 사용하여 블록 외부로 제어를 보낼 때 ch가 소멸됩니다(이 경우 저장소의 할당이 해제됨).

다른 초기화 예제를 보려면 저장소 클래스를 참조하십시오.

표시: