less than 1 minute read

Visual Studio에서 C++로 코드를 작성하다보면 다음과 같이 초록색 표시와 함께 경고가 뜨는 경우가 있다.

다음과 같은 코드일 때 C26819 경고를 볼 수 있었다.

switch ( params.size() )
{
case 2:
	eQuestState = static_cast<EQuestState>( RzStringUtil::ToUInt8( params[ 1 ] ) );
case 1:
	nQuestTableKey = RzStringUtil::ToInt32( params[ 0 ] );
	break;
}

이 코드는 치트키를 입력 받을 때 사용하는 경우인데, 치트키의 인자가 여러개인 경우에 변수에 나누어 담는 코드이다.

switch-case를 사용하면서 break 없이 사용하기 때문에 C26819 경고가 뜨게 되는데 이는 [[fallthrough]]; 키워드를 통해 해결 가능하다.

break; 문을 넣어야할 위치에 [[fallthrough]]; 문을 입력하면 된다.

참고자료

Tags:

Categories:

Updated: