IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

de la bonne utilisation de const


Sujet :

C

  1. #1
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Points : 28 129
    Points
    28 129
    Par défaut de la bonne utilisation de const
    Bonjour,

    J'ai une fonction prenant comme paramètre un char **, et je souhaiterai que celle-ci ne soit pas en mesure de modifier ni le contenant, ni le contenu, et souhaite donc utiliser le mot-clef "const" pour cela.

    Si je passais un char * en tant que paramètre, la dénificiton ressemblerait à ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    int ma_fonction (const char * const mon_parametre)
    Mais là, je ne sais pas si je dois mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    int ma_fonction (const char ** const mon_parametre)
    Ou bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int ma_fonction (const char * const * const mon_parametre)
    Désolé si ma question paraît saugrenue, mais après quelques recherches, impossible de trouver la réponse (sûrement ai-je mal cherché, mais là, je ne vois pas...)

    Merci

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 382
    Points : 41 590
    Points
    41 590
    Par défaut
    Ben ça dépend, si tu veux que rien ne soit modifiable, il faut mettre les trois...
    int ma_fonction (const char * const * const mon_parametre)

    Le rouge empêche la fonction de modifier les chaînes pointées
    Le vert empêche la fonction de modifier le tableau de pointeurs --> pointeront toujours sur les mêmes chaînes
    Le bleu empêche la fonction de modifier le paramètre -> pointera toujours sur le même tableau de chaînes. Pour protéger les données hors de la fonction, celui-ci est facultatif: il ne sert qu'à protéger le fonctionnement de la fonction elle-même.

  3. #3
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Points : 28 129
    Points
    28 129
    Par défaut
    Merci bien, c'est effectivement ce que je voulais savoir.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. JDBC : bonne utilisation?
    Par ®om dans le forum JDBC
    Réponses: 5
    Dernier message: 16/03/2006, 15h06
  2. [Singleton] En faire une bonne utilisation
    Par Koubi dans le forum Langage
    Réponses: 6
    Dernier message: 01/09/2005, 18h52
  3. [C#] La bonne utilisation des WinForms (ouverture-Fermeture)
    Par Harry dans le forum Windows Forms
    Réponses: 28
    Dernier message: 03/08/2005, 12h39
  4. La bonne utilisation de TIBTransaction
    Par jibe74 dans le forum Connexion aux bases de données
    Réponses: 15
    Dernier message: 29/01/2005, 17h18
  5. [Tomcat][sleep]De la bonne utilisation du sleep??
    Par Titom dans le forum Tomcat et TomEE
    Réponses: 3
    Dernier message: 11/01/2005, 11h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo