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 :

cacher l'implémentation des fonctions inline


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 280
    Par défaut cacher l'implémentation des fonctions inline
    Bonjour,

    je voudrais savoir s'il existe un moyen de cacher l'implémentation des fonctions inline. Apparemment non, puisque on est obligé de définir les fonctions qu'on souhaite inline dans le fichier d'entête. Est-ce à dire que si l'on souhaite cacher la structure réelle de la classe en utilisant un pointeur et en manipulant ce pointeur par l'intermédiaire des méthodes de la classe (comme ça), il faut renoncer au fonctions inline ?


    Merci pour vos réponses

  2. #2
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Les fonctions inline du C++ ne sont là que pour pouvoir avoir l'implémentation visible et faciliter l'implémentation de l'optimisation du même nom. Certains compilateurs sont capables de faire cette optimisation à l'édition de liens, donc sans avoir le code présent dans toutes les unités de compilation, mais les possibilités de contrôles sont spécifiques au compilateur, quand et si elles existent.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 280
    Par défaut
    Merci pour la réponse.

    Donc autant laisser faire gcc qui se débrouille très bien tout seul j'ai l'impression...

    PS: je n'en suis pas aux templates apparemment le mot clef inline a son utilité dans leurs utilisations

  4. #4
    Membre Expert
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Par défaut
    Bonjour,

    je ne sais pas si cela répond vraiment à ta question mais tu peux toujours définir tes fonctions inline dans un fichier d'en-tête et l'inclure juste après la définition de ta classe.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 280
    Par défaut
    Citation Envoyé par Aleph69 Voir le message
    Bonjour,

    je ne sais pas si cela répond vraiment à ta question mais tu peux toujours définir tes fonctions inline dans un fichier d'en-tête et l'inclure juste après la définition de ta classe.
    Oui bien sûr. Mais si je ne veux pas montrer aux développeurs clients mon code qu'il soit in situ ou hors de la classe dans le même fichier en tête, il apparaitra en clair...

  6. #6
    Membre Expert
    Homme Profil pro
    Chercheur
    Inscrit en
    Mars 2010
    Messages
    1 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 218
    Par défaut
    Je ne sais pas si ça fonctionne mais peut-être qu'en déclarant tes fonctions inline lors de la définition de la structure Cheshire (cf ton exemple), donc dans le .cpp, tu obtiendrais ce que tu veux.

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

Discussions similaires

  1. Bonnes pratiques vis à vis des fonctions inline ?
    Par Kaluza dans le forum Débuter
    Réponses: 8
    Dernier message: 14/04/2011, 20h35
  2. [XQUERY] implémenter des fonctions
    Par fatjoe dans le forum XQUERY/SGBD
    Réponses: 3
    Dernier message: 14/04/2010, 12h57
  3. Réponses: 18
    Dernier message: 27/02/2009, 19h19
  4. Classe Java qui implémente des fonctions oracles
    Par kamacho25 dans le forum Outils
    Réponses: 0
    Dernier message: 28/09/2007, 14h46
  5. Implémentation des fonctions mathématiques
    Par mat.M dans le forum Mathématiques
    Réponses: 9
    Dernier message: 17/06/2002, 16h19

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