Sự khác nhau giữa static readonly
và const
trong C# là gì?
Sự khác nhau giữa static readonly
và const
trong C# là gì?
Trong C#, static readonly
và const
đều được sử dụng để định nghĩa các giá trị không thay đổi, nhưng chúng có một số khác biệt quan trọng về cách sử dụng và hành vi:
const
:const
được sử dụng để định nghĩa một giá trị hằng số, nghĩa là giá trị đó không thể thay đổi sau khi biên dịch.const
phải được xác định tại thời điểm biên dịch và không thể gán hoặc thay đổi tại thời điểm chạy.const
có thể được sử dụng với các kiểu dữ liệu nguyên thủy và các kiểu dữ liệu enum
.const
được lưu trữ trong metadata của assembly và được thay thế trực tiếp tại mọi nơi mà nó được sử dụng trong mã nguồn tại thời điểm biên dịch.static readonly
:static readonly
được sử dụng để định nghĩa một biến chỉ có thể được gán một lần và giá trị của nó không thể thay đổi sau khi gán (ngoại trừ trong constructor của lớp chứa nó).static readonly
có thể được gán tại thời điểm biên dịch hoặc tại thời điểm chạy trong constructor của ...middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào