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 :

syantaxe en C++


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 19
    Par défaut syantaxe en C++
    bonjour
    dans un projet de traitement d'image j'ai trouver cette syntaxe pour faire un traitement pas enchainement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Virtual IplImage *operator () (IplImage* source)= 0
    j ai pas compris cette syntaxe

    si quelqu'un peut m expliquer

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 28
    Par défaut
    Bonjour,

    apparemment c'est une surcharge d'opérateur virtuelle pure.

    Ensuite je laisse répondre les experts sur le pourquoi du comment. Est-ce que c'est bien valide ? Une bonne solution ?

  3. #3
    Membre chevronné

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 426
    Par défaut
    Salut,
    Si tu ne sais pas ce que c'est, commence par regarder ces sujets dans les FAQs et les Tutos, tu y trouveras de précieux renseignements : héritage, polymorphisme puis fonctions virtuelles pures et classes abstraites.
    Amuses toi bien...

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 11
    Par défaut
    Exemple:
    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
    class A {
      public:
        A(const int a): s(a) {}
        virtual int operator ()(const int a) = 0;
      protected:
        int s;
    };
     
    class B: public A {
      public:
        B(const int b): A(b) {}
        virtual int operator ()(const int b)
        {
            return this->s + b;
        }
    };
     
    class C: public A {
      public:
        C(const int c): A(c) {}
        virtual int operator ()(const int c)
        {
            return this->s * c;
        }
    };
     
    int main () {
        A *a1 = new B(3), *a2 = new C(3);
     
        cout<<"a1(5): "<<(*a1)(5)<<endl; // -> a1(5): 8
        cout<<"a2(5): "<<(*a2)(5)<<endl; // -> a2(5): 15
     
        // Ou
        B b(3);
        C c(3);
     
        cout<<"b(5): "<<b(5)<<endl;  // -> b(5): 8
        cout<<"c(5): "<<c(5)<<endl;  // -> c(5): 15
     
        return 0;
    }
    Pour le reste:
    ... commence par regarder ces sujets dans les FAQs et les tutos : héritage, polymorphisme puis classes abstraites.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Citation Envoyé par swito Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Virtual IplImage *operator () (IplImage* source)= 0
    C'est une fonction virtuelle pure, qui s'avère être un foncteur, qui prend et qui renvoie un pointeur vers un objet IplImage.

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