Property |
Value |
dbo:abstract
|
- En programmation orientée objet, la sélection simple (ou sélection de méthode à aiguillage simple) traduit le fait qu'un seul argument est utilisé par le compilateur pour sélectionner la méthode à appeler.Exemple (donné en C++) : class C {public: void f(D* d){/*...*/} void f(Derived* d){/*...*/}};class D {};class Derived : public D{public: void g{}};/* ... */D* myD = new Derived;C* c = new C;c->f(myD); On pourrait s'attendre à ce que l'expression c->f(myD) appelle la méthode C::f(Derived*). Il n'en est rien. En fait le compilateur ne s'est basé que sur le type réel de c (C*), mais n'a pas cherché à connaître le type réel de myD (Derived), dont il n'a retenu que le type apparent (D*). Ainsi, le compilateur a choisi la méthode C::f(D*).Ce comportement est implémenté en C++, Java et bien d'autres langages. Pour pallier cela, il faut utiliser le design pattern visiteur en C++, ou l'introspection en Java.
* Portail de l’informatique (fr)
- En programmation orientée objet, la sélection simple (ou sélection de méthode à aiguillage simple) traduit le fait qu'un seul argument est utilisé par le compilateur pour sélectionner la méthode à appeler.Exemple (donné en C++) : class C {public: void f(D* d){/*...*/} void f(Derived* d){/*...*/}};class D {};class Derived : public D{public: void g{}};/* ... */D* myD = new Derived;C* c = new C;c->f(myD); On pourrait s'attendre à ce que l'expression c->f(myD) appelle la méthode C::f(Derived*). Il n'en est rien. En fait le compilateur ne s'est basé que sur le type réel de c (C*), mais n'a pas cherché à connaître le type réel de myD (Derived), dont il n'a retenu que le type apparent (D*). Ainsi, le compilateur a choisi la méthode C::f(D*).Ce comportement est implémenté en C++, Java et bien d'autres langages. Pour pallier cela, il faut utiliser le design pattern visiteur en C++, ou l'introspection en Java.
* Portail de l’informatique (fr)
|
dbo:wikiPageID
| |
dbo:wikiPageLength
|
- 1216 (xsd:nonNegativeInteger)
|
dbo:wikiPageRevisionID
| |
dbo:wikiPageWikiLink
| |
prop-fr:wikiPageUsesTemplate
| |
dct:subject
| |
rdfs:comment
|
- En programmation orientée objet, la sélection simple (ou sélection de méthode à aiguillage simple) traduit le fait qu'un seul argument est utilisé par le compilateur pour sélectionner la méthode à appeler.Exemple (donné en C++) : class C {public: void f(D* d){/*...*/} void f(Derived* d){/*...*/}};class D {};class Derived : public D{public: void g{}};/* ... */D* myD = new Derived;C* c = new C;c->f(myD);
* Portail de l’informatique (fr)
- En programmation orientée objet, la sélection simple (ou sélection de méthode à aiguillage simple) traduit le fait qu'un seul argument est utilisé par le compilateur pour sélectionner la méthode à appeler.Exemple (donné en C++) : class C {public: void f(D* d){/*...*/} void f(Derived* d){/*...*/}};class D {};class Derived : public D{public: void g{}};/* ... */D* myD = new Derived;C* c = new C;c->f(myD);
* Portail de l’informatique (fr)
|
rdfs:label
|
- Sélection simple (fr)
- Sélection simple (fr)
|
owl:sameAs
| |
prov:wasDerivedFrom
| |
foaf:isPrimaryTopicOf
| |
is dbo:wikiPageRedirects
of | |
is dbo:wikiPageWikiLink
of | |
is oa:hasTarget
of | |
is foaf:primaryTopic
of | |