Skip to content

KO CSharp Exceptions

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

예외, try/catch/finally 및 throw

설명서 C# · 예시 UO

try는 보호 영역을 제한하고, catch는 적절한 예외를 처리하고, finally는 종료 시 정리합니다. 필터 when는 핸들러를 선택합니다. throw;는 원래 스택을 보존하면서 현재 예외를 다시 발생시킵니다. throw exception; 시작 부분이 변경되었습니다.

간단한 예제 (Example.cs)

이 예제를 Example.cs로 따로 저장하고 이 페이지의 다른 예제와 독립적으로 실행하세요.

Example.cs:

// PROJECT-EXAMPLE
try { int.Parse("not a number"); }
catch (System.FormatException) { System.Console.WriteLine("Invalid"); }

결과:

Invalid
try
{
    int value = int.Parse("not a number");
    UO.Print(value.ToString());
}
catch (FormatException error)
{
    UO.Print(error.Message);
}
finally
{
    // Dispose resources owned by this scope.
}
int RequirePositive(int value)
{
    if (value <= 0) throw new ArgumentOutOfRangeException(nameof(value));
    return value;
}
UO.Print(RequirePositive(3).ToString());

스크립트를 종료할 의도 없이 취소를 가로채지 마세요. 청소는 자체 자원을 확보해야 합니다. finally에 대한 취소된 게임 호출로 인해 예외가 다시 발생할 수 있습니다. 컴파일 오류는 실행 전에 감지되며 실행 코드 내 try 정상적인 오류가 아닙니다.

공식 문서: 예외, try/catch/finally 및 throw - Microsoft Learn.

Clone this wiki locally