Fonction membre template c++

Résolu
Asterix2231 Messages postés 50 Date d'inscription   Statut Membre Dernière intervention   -  
Asterix2231 Messages postés 50 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Dans une classe Vecteur que je définis, j'aimerais surcharger l'opérateur *= pour multiplier mon Vecteur courant par un scalaire, au sens mathématique des termes vecteur et scalaire.
Ce que j'aimerais en plus c'est que ce scalaire puisse être de type double, long, int ou float, ce qui m'a conduit aux fonctions template.

Ma question est: comme j'ai l'intention d'écrire la surcharge de l'opérateur *= comme une fonction membre template de ma classe Vecteur, où est ce que je dois l'implémenter: à la fin du fichier vecteur.h ou bien dans le fichier vecteur.cpp associé?

Un bout de mon code:

class Vecteur{
public:
    double x, y, z;
    Vecteur(double X, double Y, double Z) : x(X), y(Y), z(Z);

    template <typename Scalaire>
    Vecteur& operator*=(const Scalaire& S);
};


Merci!
A voir également:

1 réponse

Asterix2231 Messages postés 50 Date d'inscription   Statut Membre Dernière intervention   11
 
Bon je vais me répondre:

après quelques recherches pas très poussées (j'avais été un peu fainéant en posant la question), ca peut visiblement se faire dans le .cpp.

Merci moi!
2