Je suis nouveau à C ++ et je suis venu sur le mot clé comparé à l'utilisation p> Pourquoi devrais-je utiliser un sur l'autre? Quelle est l'idée de l'utiliser. P> p> const code>. Je l'ai regardé en ligne et lisez que l'utilisation principale consiste à empêcher la modification de la valeur dans tout le programme. J'ai ces deux extraits ci-dessous
3 Réponses :
Oui, vous devriez faire tous em> variables En outre, il y a quelque chose que vous ne connaissez peut-être pas, ce qui consiste à créer une variable const code> si vous n'allez jamais changer sa valeur après l'initialisation. Cela empêche les bugs où vous changez accidentellement une valeur que vous n'êtes pas censée. Vous semblez être conscient de cela déjà.
int code> const code> fait aussi il est une expression constante tant que l'initialisateur lui-même est également une expression constante, par exemple Le
int code> littéral
56 code>. Cela vous permet de l'utiliser dans des contextes où vous avez besoin d'une expression constante, par ex. En tant que dimension d'une matrice statique: P>
int size = 56;
int a[size]; // error
Votre deuxième point n'est que vrai lorsque la variable Const est connue au moment de la compilation. Par exemple, int Main (int Argc, char * argv []) {const int to taille = argc; int a [taille]; } code> est une erreur de compilation (sauf si le compilateur prend en charge des tableaux de taille dynamique)
@Tedkleinbergman True, a précisé que l'initialisateur doit également être une expression constante.
Lorsque vous avez une variable code> const code> Tenir quelque chose qui ne doit pas changer et écrire accidentellement du code qui modifie de toute façon la variable, vous obtenez une mauvaise erreur du compilateur et peut facilement corriger votre erreur. Si la variable est non- const code>, le compilateur ne peut pas vous aider et vous avez maintenant un bug qui peut être difficile à trouver. P>
in c ++ const est utilisé lorsque vous souhaitez déclarer quelque chose qui ne changera pas sa valeur dans tout le programme. Mais si vous essayez accidentellement de réécrire sa valeur, le compilateur passera par une erreur. La plupart du temps, il est recommandé de déclarer une variable de type INT afin que vous puissiez redéfinir sa valeur si nécessaire. Const est utilisé lorsque vous souhaitez déclarer une matrice statique, c'est-à-dire
int a = 12; int arr[4] = {11,22,33,554}; for (int i=0; i<4; i++){ if(arr[i]%2 == 0){ a+=arr[i]; } }
Je suis confus à propos de votre question. Vous avez répondu à votre dernière phrase dans votre deuxième phrase.
Duplicaté possible: Utilisez Const dans la mesure du possible dans C ++?
Après avoir défini et initialiser la taille, effectuez une affectation (dans une fonction qui a la visibilité de la définition de la variable) comme
taille = 42 code>. Vous verrez que le compilateur se plaint amèrement dans un cas mais pas l'autre. Maintenant, considérons les cas où vous voudriez que le compilateur vous empêche de changer la valeur de la taille code> - ou, si elle a été autorisée, votre programme pourrait dysfonctionnement.
Une fois que vous êtes à l'aise avec l'utilisation de Cons Variables, examinez les fonctions des membres de Const et le concept plus large de la Constance Constitue pour avoir une idée de la raison pour laquelle cela est extrêmement puissant.
Si la variable doit être mutable, alors ne le faites pas
const code>. Si la variable n'est pas censée changer après avoir été initialisée, envisagez de le faire
const code>.
ISOCPP.ORG/WIKI/FAQ/CONST-CORTHNESS
@Aryan Parekh, bienvenue à Stackoverflow. Sachez que vous devriez essayer de déterminer la réponse à votre question avant de le publier. Cette question est facilement répondue par Googling, exemple de recherche: Pourquoi utiliser const C ++