Skip to content
This repository has been archived by the owner on Jan 10, 2023. It is now read-only.

Giá trị đối tượng bị thay đổi không rõ nguyên do #1

Closed
KafkaWannaFly opened this issue Nov 23, 2019 · 1 comment
Closed
Labels
singularity Code is fine but resulting weird behaviors in some extreme situations warning Warning

Comments

@KafkaWannaFly
Copy link
Owner

Dù luôn cẩn thận sử dụng const nhưng đôi khi giá trị của biến vẫn có thể bị thay đổi không rõ lý do.
singularity
Ở trường hợp trên, chương trình hẳn sẽ báo lỗi vì không thể chia cho 0 nhưng...
console
Vì lý do nào đó, biến neg đã mang giá trị là 1
Khảo sát cho thấy, có vẻ như neg đã thay đổi giá trị sau khi làm phép trừ (dòng 21). Tuy nhiên, bản thân operator- không hề có lỗi.

Hãy thử 1 ví dụ khác. Chỉ cần thay đổi nhẹ thứ tự các dòng code.
singularity2
Và BÙM!
console2

GIẢI QUYẾT
Tôi dự đoán rằng lỗi này xuất hiện do code "nén ép" kiểu (pos - neg).getDecimal(). Cho nên, để an toàn thì hãy chịu khó làm từng bước như sau và hy vọng sẽ debug ra lỗi nếu còn gặp lại.
solution

@KafkaWannaFly KafkaWannaFly added singularity Code is fine but resulting weird behaviors in some extreme situations warning Warning labels Nov 23, 2019
@daoleviethoang
Copy link
Collaborator

daoleviethoang commented Nov 29, 2019 via email

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
singularity Code is fine but resulting weird behaviors in some extreme situations warning Warning
Projects
None yet
Development

No branches or pull requests

2 participants