Questions d'un "mannequin - page 180

 
Dimka-novitsek:
Oh, merci !!!! C'est là ! !!
Semyon Semenych.....('Le bras de diamant')
 

La boucle est correcte, une telle construction est acceptable, car i est déclaré globalement, il est initialisé 0 par défaut.

Mais pourquoi achetons-nous par enchère ? Vendrons-nous par Ask ? Apparemment, l'écart est plus grand que la dispersion, sinon il ne s'ouvrirait pas du tout. Mais comment l'OrderCheck peut-il le manquer ?

 
Dimka-novitsek:

J'ai déclaré int i ; en dehors des fonctions, au-dessus de son tick, qu'il ouvrirait les ordres exactement cinq ! Sinon, cela en ouvrirait beaucoup. L'essentiel est que cela fonctionne.

C'est la première fois que je l'entends ou que je le lis ! Intéressant.

Cool ! !! Merci.

Personnellement, j'ai l'impression que vous n'utilisez pas de documentation. Pas du tout.

Stop. Faites une pause. Lisez.

 
Dimka-novitsek:
Qu'est-ce qui a été perdu ? Je pense que d'après la référence...
Donnez-moi une citation de la référence.
 
Apparemment je n'ai pas assez dormi, la question n'a pas de sens. Supprimé la question.
 

Je me suis un peu emballé plus haut, alors je vais répéter la question :) :

Est-il possible de résoudre le problème suivant en C++ ?


Dans l'affaire :

Q1 *p = nouveau Q2() ;

p->Fn() ;

Q1::Fn() sera appelé ;

Vous avez besoin de Q3::Fn() ;

Je pense que la figure est plutôt informative. Sinon, veuillez poser une autre question.

 

220Volt:

Q1::Fn() sera appelé ;

Vous avez besoin de Q3::Fn() ;

puis appeler

Q3::Fn() ;

L'opérateur : : ne fonctionne plus ?

 
sergeev:

Alors appelez

Q3::Fn() ;

al est l'opérateur : : ne fonctionne plus ?

Le piège est que l'héritage multiple introduit une incertitude pour le compilateur, nous devons définir des priorités d'héritage ou faire un héritage dumb Q3, mais comment. J'insiste sur le fait que nous devons créer une fonction virtuelle dans l'ancêtre. La référence à une fonction après plusieurs héritages ne pose aucun problème.
 
sergeev:

Alors appelez

Q3::Fn() ;

L'opérateur : : ne fonctionne plus ?

Si vous l'appelez ainsi, devez-vous renommer les fonctions pour qu'elles aient des noms différents ?

à Faku1Fn et Faku3Fn :)

Même chose, mais de côté.

Il n'y aura aucun conflit dans ce cas.

220Volt:

J'ai été trop loin ci-dessus, je vais donc dupliquer la question :) :

Est-il possible de résoudre la tâche suivante en C++ ?


Dans l'affaire

Q1 *p = nouveau Q2() ;

p->Fn() ;

Q1::Fn() sera appelé ;

Vous avez besoin de Q3::Fn() ;

Je pense que la figure est plutôt informative, sinon, veuillez me poser une question complémentaire.

Définissez le super-problème, ce à quoi il sert, et la solution apparaîtra.

Parce que pour l'instant, la solution se résume à :

classe Q1

classe Q3 : public Q1

classe Q2 : public Q3

 
Urain:

Définissez le sur-objectif, ce à quoi il sert, puis une solution émergera.

Parce que pour l'instant, la solution se résume simplement à :

classe Q1

classe Q3 : public Q1

classe Q2 : public Q3

l'intérêt est probablement purement académique

comment faire Q3 en C++ : public Q1, public Q2

et en même temps faire comprendre au compilateur ce que l'on attend de lui.