public int Divide(int x, int y)
{
try
{
int z = x / y;
Console.WriteLine("{0} / {1} = {2} 입니다.", x, y, z);
return x / y;
}
catch (DivideByZeroException e)
{
Console.WriteLine("0으로 나눌 수 없습니다.");
throw e;
}
}
이렇게 짰거든? 근데 실행하면 "0으로 나눌 수 없습니다." 이거는 뜨는데 예외가 처리되지 않는다고 떠..
어케 해야돼?
니가 다시 던졌자너... throw e; 로...
throw e를 빼면 Divide(int x, int y)가 설정이 안되는데?
throw e빼면 안된다고? 되지 않음? 밑에 리턴 없어서 에러나는거 아니야?
안됨..
0으로 나누니까 리턴이 있으면 오류가 남
보통 이런건 TryDivide 형태로 반환값을 bool로 작성하는게 좋음. 예를들면..
public bool TryDivide(int x, int y, out double result)
Out 키워드로 함수 내부에서 사용한 값을 돌려줄 수 있음