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 :

Template -> séparation .h et .cpp


Sujet :

C++

  1. #1
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 859
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 859
    Points : 218 580
    Points
    218 580
    Billets dans le blog
    120
    Par défaut Template -> séparation .h et .cpp
    Bonjour,

    Comme vous vous en doutez, l'explication de ma présence ici est que j'ai un problème.
    Effectivement, pour une fois, je voulais éviter le copier / coller d'un code en faisant une fonction template.

    Cela fonctionne, lorsque l'implémentation de la fonction est dans le .h (comme tout le monde sait). J'ai relu la FAQ sur le sujet, et je voulais savoir si la technique de l'export a été mis en place ou toujours pas (et si vous pensez que cela le sera un jour). Notamment, j'espère que le C++0x améliore un peu les choses sur ce cas.

    Pourquoi voudrai-je tant avoir une implémentation dans le .cpp ... bah simplement que l'implémentation de la fonction nécessite plusieurs include pour fonctionner et que cela me gêne énormément de mettre ces includes dans le .hpp.

    Donc je voudrais savoir si il existait une solution ... ou pas du tout (quels sont vos secrets dans ces cas là)

    Merci pour votre attention
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  2. #2
    Membre chevronné
    Avatar de Joel F
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Septembre 2002
    Messages
    918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2002
    Messages : 918
    Points : 1 921
    Points
    1 921
    Par défaut
    Toujours pas d'export.

    Dans ce genre de cas, faut affiner la structure de la classe/fonction en extrayant les parties compilables sans dependances au parametres templates.

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 23
    Points : 59
    Points
    59
    Par défaut
    Citation Envoyé par n3225 - 2.12 [lex.key] :
    [ Note: The export keyword is unused but is reserved for future use. — end note ]
    De toute façon comme il a été dit par Sutter, export ne résoudrait pas tes problèmes de dépendances… c.f. un article sur Dr Dobbs.

    Tu peux toujours essayer de factoriser le code avec de fortes dépendances dans des fonctions (non template) appelées par ta fonction template (si c'est possible).

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 859
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 859
    Points : 218 580
    Points
    218 580
    Billets dans le blog
    120
    Par défaut
    Merci pour vos réponses.

    Peut être que dans la FAQ, on pourrait retirer cette histoire d'export ...

    Finalement, j'ai réussi à faire en sorte que ma fonction template appelle une autre fonction, et qu'elle ne contienne plus de code dépendant d'autres fichiers. \o/
    Merci pour m'avoir poussé à faire ce changement que je crois que j'aurais pas eu l'idée de faire.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/12/2011, 13h16
  2. Réponses: 3
    Dernier message: 11/04/2011, 07h55
  3. winform et séparations .h/.cpp
    Par tazer dans le forum Visual C++
    Réponses: 0
    Dernier message: 15/02/2010, 10h23
  4. classe template separe en fichier header et cpp
    Par S_ami dans le forum Langage
    Réponses: 6
    Dernier message: 03/06/2009, 11h30
  5. Probleme d utilisation de template dans le cpp
    Par Math75 dans le forum Langage
    Réponses: 2
    Dernier message: 07/10/2005, 16h26

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