0Pricing
C++ Academy · Leçon

Variables et paramètres const

Protéger les données contre les modifications

Variables et paramètres const est une leçon C++ Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage C++ Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours C++ Academy comprend 4 leçons au total.

Déclarer des variables const

Une variable const ne peut pas être modifiée après son initialisation. Le compilateur l'impose et détecte les écritures accidentelles.

#include <iostream>

int main() {
    const int maxUsers = 100;
    // maxUsers = 200;   // ERROR
    std::cout << maxUsers << "\n";
}

Paramètres de fonction const

Marquer un paramètre transmis par valeur avec const empêche le corps de la fonction de modifier sa copie locale — une aide à la documentation et à la sécurité.

#include <iostream>

int doubled(const int n) {
    // n = 0;   // ERROR
    return n * 2;
}

int main() { std::cout << doubled(21) << "\n"; }

Paramètres de référence const

Le passage par const& évite de copier les objets volumineux tout en garantissant qu'ils ne seront pas modifiés — c'est la manière standard de transmettre des chaînes et des conteneurs.

#include <iostream>
#include <string>

void printLen(const std::string& s) {  // no copy, no change
    std::cout << s.size() << "\n";
}

int main() { printLen("hello"); }

Pointeur vers une valeur const

const T* signifie que vous ne pouvez pas modifier la valeur pointée par l'intermédiaire de ce pointeur, bien que vous puissiez réaffecter le pointeur lui-même.

#include <iostream>

int main() {
    int a = 1, b = 2;
    const int* p = &a;
    // *p = 5;   // ERROR: value is const
    p = &b;      // OK: pointer can move
    std::cout << *p << "\n";
}

Pointeur const

T* const est un pointeur constant : vous ne pouvez pas le réaffecter, but vous pouvez modifier la valeur vers laquelle il pointe.

#include <iostream>

int main() {
    int a = 1;
    int* const p = &a;
    *p = 9;      // OK: value changeable
    // p = nullptr;  // ERROR: pointer is const
    std::cout << *p << "\n";
}

Lire les déclarations de droite à gauche

Lisez les déclarations const de droite à gauche : const int* const est un « pointeur const vers un int const » — ni la valeur ni le pointeur ne peuvent changer.

Pourquoi la const-correctitude ?

Utiliser const partout où cela s'applique documente l'intention, prévient les erreurs et permet au compilateur d'optimiser le code. Cette discipline s'appelle la const-correctitude.

const permet les appels avec des arguments const

Une fonction qui accepte const& peut recevoir des arguments const et non const, ainsi que des temporaires. Une référence non const ne peut pas être liée à un temporaire.

Les variables locales const facilitent le raisonnement

Déclarer les variables locales const lorsqu'elles ne doivent pas changer rend le code plus facile à lire et empêche les réaffectations accidentelles.

#include <iostream>

int main() {
    const double rate = 0.2;
    const double total = 100 * (1 + rate);
    std::cout << total << "\n";
}

const de niveau supérieur sur les valeurs

Pour les paramètres transmis par valeur, const de niveau supérieur n'a aucun effet sur l'appelant — il ne fait que limiter le corps de la fonction et est souvent omis dans les déclarations.

Ajouter const dès le début

Il est bien plus facile de respecter la const-correctitude dès le départ que de l'ajouter après coup. Prenez l'habitude d'appliquer const par défaut aux paramètres, aux références et aux variables locales.

Vérification rapide

Vérifiez votre compréhension de const.

Récapitulatif

Vous avez appris à utiliser const sur les variables, les paramètres, les références et les pointeurs, ainsi que la différence entre pointeur vers une valeur const et pointeur const. La const-correctitude documente l'intention, prévient les erreurs et permet la liaison à des temporaires ainsi que l'optimisation.

Questions Fréquemment Posées

La leçon « Variables et paramètres const » est-elle gratuite ?

Oui — le texte complet de « Variables et paramètres const » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours C++ Academy, passe à CoddyKit PRO. Le cours C++ Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Variables et paramètres const » ?

Protéger les données contre les modifications Tu pratiques C++ Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer C++ Academy ?

Aucune expérience préalable n'est requise. C++ Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Variables et paramètres const » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon C++ Academy ?

Oui. Chaque leçon C++ Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Variables et paramètres const
  2. Fonctions membres const
  3. constexpr et évaluation à la compilation
  4. consteval et constinit
← Retour à C++ Academy