Computer >> Máy Tính >  >> Lập trình >> C#

Đã kiểm tra và ngoại lệ không kiểm tra trong C #

Bạn có thể thực thi các câu lệnh trong C # trong ngữ cảnh được chọn hoặc không được chọn.

Khi được chọn, ngoại lệ được đưa ra bởi tràn số học, trong khi trong ngữ cảnh không được kiểm tra, tràn số học bị bỏ qua.

Ngoại lệ đã Kiểm tra

Sử dụng từ khóa đã kiểm tra để bật rõ ràng tính năng kiểm tra tràn đối với các phép toán và chuyển đổi số học kiểu tích phân. Đối với điều này, chỉ cần đặt từ khóa đã chọn.

Kiểm tra bổ sung có thể được kích hoạt bằng các tùy chọn trình biên dịch, cấu hình môi trường hoặc sử dụng từ khóa đã kiểm tra.

res = checked(val + 10);

Giả sử giá trị của val là 2147483647, tức là giá trị tối đa của kiểu int. Ở trên sẽ đưa ra một lỗi kể từ khi nó được kiểm tra. Điều này cho phép kiểm tra tràn trong thời gian chạy.

Ngoại lệ không được chọn

Sử dụng từ khóa không được kiểm tra để ngăn chặn kiểm tra tràn đối với các phép toán và chuyển đổi số học kiểu tích phân. Đối với điều này, chỉ cần đặt từ khóa không được chọn.

Ở đây, phần tràn số học bị bỏ qua. Sử dụng nó để ngăn kiểm tra tràn.

res =unchecked(val + 10);

Giả sử giá trị của val là 2147483647. Ở trên sẽ không gây ra lỗi vì việc kiểm tra tràn bị ngăn chặn bằng cách sử dụng từ khóa không được kiểm tra.