작성
·
177
1
문제는 금방찾았는데 어떻게 고쳐야할지가 고민이더라고요.
오버플로우 문제인데 체력이 회복하는 포션이 생겼는데
최대체력을 만들어도 되는지, 한번 회복량에 제한은 있는지 확실하지 않아 일단 _hp를 __int64로 바꿨습니다.
생각하보면 코드가 문제라기보다는 과도한 테스트가 문제인거 같아보이는데요.
만약 실제 현업에서 너무 오버한 테스트로인한 오버플로우라면
코드를 고치기보다는 해당 테스트를 수정하는편인가요?
답변 1
2
상황에 따라 다릅니다.
maxHP가 있다면 거기서 걸러질 것이고,
게임이 오래돼서 정말 데미지 공식이 우주를 뚫어서 int32를 초과하는 바람에
모든 데미지/체력 등을 int64으로 바꾸는 대공사를 한 적도 있습니다.