Mục lục:
Định nghĩa - Constant có nghĩa là gì?
Trong ngữ cảnh của C #, hằng số là một loại trường hoặc biến cục bộ có giá trị được đặt tại thời gian biên dịch và không bao giờ có thể thay đổi khi chạy. Nó tương tự như một biến bằng cách có tên, giá trị và vị trí bộ nhớ. Tuy nhiên, nó khác với biến bởi đặc tính của nó là chỉ được khởi tạo một lần trong ứng dụng. Một hằng số được khai báo bằng từ khóa "const".
Các biến có kiểu dựng sẵn, ngoại trừ System.Object có giá trị không thay đổi được biết tại thời điểm biên dịch, có thể được khai báo là hằng số. Trong quá trình biên dịch, giá trị không đổi được thay thế cho giá trị bằng chữ của nó thành mã ngôn ngữ trung gian bởi trình biên dịch. Điều này dẫn đến tính toàn vẹn của ứng dụng tốt hơn bằng cách giảm các lỗi vô ý. Việc sử dụng hằng số cũng cải thiện hiệu suất so với các biến thông thường. Nó cải thiện khả năng đọc mã và cung cấp bảo trì tốt hơn, vì việc cập nhật giá trị không đổi ở một nơi dễ dàng hơn trước khi biên dịch lại phần mềm.
Techopedia giải thích liên tục
Một hằng số có các đặc điểm sau hoặc phải tuân thủ các quy tắc sau:
- Một hoặc nhiều hằng số của một loại nhất định có thể được khai báo trong một khai báo.
- Một hằng số có thể thuộc bất kỳ loại nào, chẳng hạn như sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, binary, bool, string, enum-type hoặc kiểu tham chiếu.
- Một loại hằng số ít nhất có thể truy cập được như chính hằng số đó.
- Một hằng số có thể phụ thuộc vào các hằng số khác nếu các phụ thuộc không có tính chất vòng tròn.
- Một hằng số không thể được sử dụng cho một phương thức, thuộc tính hoặc sự kiện.
- Một hằng số không thể là các kiểu do người dùng định nghĩa, chẳng hạn như lớp, struct và mảng.
- Trong khi khai báo một hằng số, một bộ sửa đổi tĩnh có thể được sử dụng.
- Việc chỉ định một biến không đổi đã được gán trong thời gian chạy dẫn đến lỗi biên dịch.
- Vì không có địa chỉ nào được liên kết với hằng số trong thời gian chạy, nên nó không thể được chuyển qua tham chiếu và không thể xuất hiện dưới dạng giá trị l trong biểu thức.
- Một hằng số có thể được sử dụng với các sửa đổi truy cập như công khai, riêng tư, được bảo vệ, nội bộ hoặc được bảo vệ nội bộ.
- Khai báo liên tục được thực hiện ở cấp lớp được lưu trữ trong siêu dữ liệu lắp ráp.
Một số thực hành tốt nhất trong khi sử dụng hằng số bao gồm:
- Các hằng số cần được khởi tạo trong quá trình khai báo.
- Các hằng số sẽ được sử dụng với các tên có ý nghĩa vì chúng đại diện cho các giá trị đặc biệt.
- Để xác định nhiều hằng số không tách rời / tích phân, một lớp tĩnh đơn (chứa các biến thành viên không đổi) có thể được sử dụng để nhóm chúng.
- Phạm vi của biến không đổi được giới hạn trong một tập hợp, lớp hoặc phương thức. Do đó, trong khi tham chiếu các giá trị không đổi được định nghĩa trong các cụm khác, nó phải được biên dịch lại cho bất kỳ sửa đổi nào trước khi biên dịch cụm phụ thuộc.
Một hằng số khác với biến chỉ đọc ở chỗ trước đây cần được khởi tạo trong thời gian khai báo và tĩnh, trong khi biến sau có thể được khởi tạo trong khi khai báo hoặc bất kỳ lúc nào (như trong một hàm tạo để có các giá trị khác nhau dựa trên loại hàm tạo ). Do đó, hằng số được gọi là hằng số thời gian biên dịch và biến chỉ đọc là hằng số thời gian chạy.
Định nghĩa này được viết trong bối cảnh của C #