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 :

surchage avec int et float


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 64
    Par défaut surchage avec int et float
    Bonjour,

    J'ai créé deux classes vecteurs (un peu particulières pour ne pas utiliser les librairies par défaut), l'une Vect_i qui prend en paramètre des int, et l'autre Vect_f qui prend en paramètre des float, avec des opérateurs +, - ...

    Les deux classes sont pratiquement identiques, alors j'aimerais bien alléger mon code pour ne pas avoir de duplication de code. Je pensais faire une classe abstraite en la surchargeant avec ça :

    Vect(int const &a, int const &b);
    Vect(float const &a, float const &b);

    Mais avec un v = Vect(4, 7) qui sera appelé ? Je ne sais pas trop ce qui serait le mieux, une idée ? Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    #ifndef VECT_H
    #define VECT_H
     
    class Vect {
    public:
        explicit Vect(int, int);
        explicit Vect();
        int x, y;
     
        void operator+=(Vect const& a);
        void operator-=(Vect const& a);
     
        int width, height;
     
    };
     
    bool operator==(Vect const& a, Vect const& b);
    bool operator!=(Vect const& a, Vect const& b);
    Vect operator+(Vect const& a, Vect const& b);
    Vect operator-(Vect const& a, Vect const& b);
    int coord_gbr(Vect const& a);
    int coord_gray(Vect const& a);
    bool is_null(Vect const &a);
    bool control(Vect const &a);
     
    #endif // VECT_H
     
    #ifndef VECT_F_H
    #define VECT_F_H
     
    class Vect_f {
    public:
        explicit Vect_f(float, float);
        explicit Vect_f();
        float x, y;
     
        void operator+=(Vect_f const& a);
        void operator-=(Vect_f const& a);
     
        float width, height;
     
    };
     
    bool operator==(Vect_f const& a, Vect_f const& b);
    bool operator!=(Vect_f const& a, Vect_f const& b);
    Vect_f operator+(Vect_f const& a, Vect_f const& b);
    Vect_f operator-(Vect_f const& a, Vect_f const& b);
    bool is_null_f(Vect_f const &a);
    bool control_f(Vect_f const &a);
     
    Vect_f cross(Vect_f const &v1, Vect_f const &w1, Vect_f const &v2, Vect_f const &w2);
     
    #endif // VECT_F_H

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 146
    Billets dans le blog
    4
    Par défaut
    Salut,

    utilise des templates peut-être ?
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

Discussions similaires

  1. Réponses: 4
    Dernier message: 12/05/2010, 20h18
  2. Problème avec INT 13h : lire et écrire secteur de disquette
    Par united4life dans le forum Assembleur
    Réponses: 19
    Dernier message: 01/02/2007, 01h48
  3. declarer un nombre plus grand qu'avec int?
    Par menzeli dans le forum C
    Réponses: 14
    Dernier message: 05/01/2007, 00h14
  4. [Débutant] Ecrire sur disque dur avec int 13h
    Par bregolhen dans le forum Assembleur
    Réponses: 5
    Dernier message: 14/04/2006, 15h06
  5. conversion int to float ->resultat erroné
    Par firejocker dans le forum MFC
    Réponses: 5
    Dernier message: 03/04/2006, 14h41

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