횽들은 에러 처리를 어떻게 하십니까 ㅠㅠ?
전 프로그래밍을 완전 방어적으로 하는데..
친구들은 \"무슨 코드에 에러 처리가 이렇게 많아 ㅋㅋㅋ\"라고 놀라곤 합니다 ㅠㅠ
제가 쓰는 에러 처리 방식은 Windows API 방식(거의 C언어 프로그램의 정석인듯 하던데..) 인데요..
클래스를 만들때, 다음의 멤버 함수를 두고,
private bool setError(); // 무조건 false반환 -> return setError(...); 방식 가능
public unsigned int getError();
멤버 함수 안에서 오류가 나면,
if (expresions) return setError(error contents);
이런식으로 오류를 설정해줍니다.
그리고 에러는 instance.getError() 이런식으로 사용합니다
그런데 이 방식을 쓰다보니 생기는 문제는,
a()
ㄴb() : 엇 c에서 에러났네? return setError(ERROR_C_FAILED);
ㄴc() : 엇 read()함수가 에러났네? return setError(ERROR_READ_FAILED);
이런 쳐죽일 코드를 작성할 가능성이 높아집니다 ㅠㅠ
(보통은 b()에서 c()를 호출할때 \"if (!c()) return false; // 에러는 안에서 처리됬지롱~\" 이렇게 코딩을합니다)
하지만.. 분명히 무언가 더 효율적인 에러 처리 방법이 있을것 같아서!
이렇게 프갤에 요청을..ㅠㅠ
답변 부탁드릴께요 ㅠㅠ
예외
ㄴ예외를 어떻게 사용하시는지 약간의 예시 부탁드릴수있을까요 ㅠㅠ?
그..그건 나보다 구글이 더 친절하고 자세하게 알려줄 거임.. 나 따위...
ㄴ엇.. 아니에요 ㅠㅠ 도움이 필요합니다 ㅠㅠ
try-catch도 안배웠냐
아님.. 내가 여기서 겨우 몇 마디로 썰 푸는 것보다 구글에서 찾는 게 더 확실하고 유익할 거임. 구글에서 \'자바 예외\'라고 쳐도 꽤 나옴..
자두맛고기// C++책들은 대충 언급하고 넘어가는 식이라서요.... 어쩌면 제가 지나쳤을수도 ㄷㄷ;
다람쥐//넵 ㅠㅠ 감사합니다
c++이면 try catch.
c 면 setjmp / longjmp
유리한// 그러면 java도 try/catch인거지?!
네.
자바나 c++이나 그게 그거지 머 쩝
try-catch하시면....