Junior — Middle
V čem se liší klíčová slova const a readonly v kontextu programování, a kdy je jejich použití výhodnější?
sobes.tech AI
Odpověď od AI
V jazyce C# se klíčové slovo const používá k deklaraci konstant, jejichž hodnoty jsou známy v době kompilace a během běhu nelze měnit. Tyto hodnoty by měly být primitives nebo literály a měly by být ihned inicializovány.
readonly se používá pro pole, jejichž hodnotu lze nastavit pouze při deklaraci nebo v konstruktoru třídy. Po inicializaci nelze hodnotu změnit, ale může být vypočtena během běhu.
Kdy používat:
const— pro neměnné hodnoty známé v době kompilace (například čísla, řetězce).readonly— když je hodnota známa pouze během běhu, například závisí na parametrech konstruktoru.
Příklad:
public class Example {
public const double Pi = 3.1415; // známo v době kompilace
public readonly DateTime CreatedAt;
public Example() {
CreatedAt = DateTime.Now; // inicializace během běhu
}
}