Il differenza principale tra costante e readonly è quello a la costante viene valutata al momento della compilazione mentre un readonly viene valutato al runtime.
C # è un linguaggio di programmazione moderno e generico che supporta la programmazione orientata agli oggetti. È progettato per Common Language Infrastructure (CLI). Una variabile è un nome assegnato a una posizione di memoria. Può avere un valore e questo valore può essere utilizzato nel programma. Le variabili possono essere di vario tipo. le variabili int contengono valori interi, mentre le doppie variabili contengono valori doppi, ecc. Queste variabili possono anche essere dichiarate come costanti e di sola lettura. La costante viene utilizzata per le costanti assolute mentre readonly viene utilizzata per le costanti non assolute.
1. Cos'è Constant
- Definizione, Funzionalità
2. Cos'è Readonly
- Definizione, Funzionalità
3. Qual è la differenza tra Constant e Readonly
- Confronto tra le principali differenze
C #, Constant, Readonly
La costante è usata per le costanti assolute. Il valore viene impostato durante la dichiarazione della variabile.
Un esempio è il seguente.
int const number = 50;
Il valore del numero è impostato su 50 al momento della dichiarazione. Dopo l'assegnazione, non è possibile modificare il valore della variabile.
Il const consente solo alle costanti di essere utilizzate nelle espressioni. Uno di questi esempi è il seguente.
int const num1 = 10;
int const num2 = 20;
int const num3 = num1 + num2;
Se ci sono istruzioni come segue, ci sarà un errore in fase di compilazione.
int const a = 10;
int b = 5;
int const c = a + b;
Questo darà un errore di compilazione in quanto b non è costante.
Readonly viene valutato in fase di runtime. Non è necessario impostare il valore al momento della dichiarazione. Il valore è assegnato nel costruttore. Un esempio è il seguente.
programma di classe
sola lettura doppio pi;
Programma()
pi = 3,14;
void changeValue ()
// pi = 3,1;
Il valore pi è assegnato all'interno del costruttore. Il changeValue () non può assegnare un valore a pi. Invece, il programmatore può inizializzare la variabile al momento della dichiarazione come segue.
sola lettura doppio pi = 3,14;
Inoltre, readonly può essere dichiarato solo a livello di classe, non all'interno dei metodi.
Constant si riferisce a una variabile che è immutabile nella programmazione C # mentre readonly è una parola chiave in C # che indica che l'assegnazione al campo può avvenire solo come parte della dichiarazione o in un costruttore della stessa classe.
La differenza principale tra costante e readonly è che mentre la costante viene valutata al momento della compilazione, viene valutata in sola lettura a runtime.
La parola chiave 'const' è usata per le costanti mentre la parola chiave 'readonly' è usata per readonly.
Un'ulteriore differenza tra costante e readonly è che, nelle costanti, è obbligatorio assegnare valori al momento della dichiarazione. Ma, in sola lettura, non è obbligatorio assegnare valori al momento della dichiarazione. Un valore può essere assegnato nella dichiarazione o nel costruttore della classe.
Inoltre, le costanti possono essere dichiarate a livello di classe e di metodo. Il readonly può essere dichiarato solo a livello di classe.
Inoltre, mentre const viene utilizzato per i valori assoluti, readonly viene utilizzato per le costanti non assolute. Questa è un'altra differenza tra costante e readonly.
La costante e la sola lettura possono sembrare simili ma hanno una differenza. La differenza tra costante e readonly è che una costante viene valutata al momento della compilazione mentre un readonly viene valutato in fase di esecuzione.
1. "Cos'è Const? - Definizione da WhatIs.com. " TheServerSide.com, Disponibile qui.
1. "Logo C Sharp" di Microsoft - (dominio pubblico) tramite Commons Wikimedia