• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

문제 4번 질문입니다.

22.01.02 21:48 작성 조회수 141

1

문제는 금방찾았는데 어떻게 고쳐야할지가 고민이더라고요.

오버플로우 문제인데 체력이 회복하는 포션이 생겼는데

최대체력을 만들어도 되는지, 한번 회복량에 제한은 있는지 확실하지 않아 일단 _hp를 __int64로 바꿨습니다.

생각하보면 코드가 문제라기보다는 과도한 테스트가 문제인거 같아보이는데요.

만약 실제 현업에서 너무 오버한 테스트로인한 오버플로우라면

코드를 고치기보다는 해당 테스트를 수정하는편인가요?

답변 1

답변을 작성해보세요.

2

상황에 따라 다릅니다.
maxHP가 있다면 거기서 걸러질 것이고,
게임이 오래돼서 정말 데미지 공식이 우주를 뚫어서 int32를 초과하는 바람에
모든 데미지/체력 등을 int64으로 바꾸는 대공사를 한 적도 있습니다.