Ho notato che l'assegnazione di un char
a un const int&
compila, ma assegnandolo a un int&
dà un errore di compilazione.assegnazione di char a riferimento int e riferimento const const in C++
char c;
int& x = c; // this fails to compile
const int& y = c; // this is ok
Capisco che non è una buona pratica per fare questo, ma sono curioso di sapere il motivo per cui accade.
Ho cercato una risposta cercando "assegnando al riferimento di tipo diverso", "assegnando char a un riferimento int" e "differenza tra riferimento const e riferimento non const" e ho trovato un numero di messaggi utili (int vs const int&, Weird behaviour when assigning a char to a int variable, Convert char to int in C and C++,), ma non sembrano rispondere alla mia domanda.
Le mie scuse se è già stata data una risposta in precedenza.
@downvoter ti dispiacerebbe spiegare il motivo? Voglio imparare come posso migliorare la qualità delle mie domande qui, dal momento che ho intenzione di visitare questo sito regolarmente. :) –