woot6768
Messages postés393Date d'inscriptionmercredi 8 mars 2006StatutMembreDernière intervention23 mars 2007
-
13 juin 2006 à 16:51
woot6768
Messages postés393Date d'inscriptionmercredi 8 mars 2006StatutMembreDernière intervention23 mars 2007
-
13 juin 2006 à 17:17
Bonjour,
J'aimerais savoir, si quelqu'un veut bien m'expliquer, ce que sont les erreurs du genre :
Aucune surcharge pour la méthode 'Trim' ne prend d'arguments '1'
Merci pour vos explications;)
_________________________________________________________________________
Woot Alias Wouter Tjon.
dgouttegattat
Messages postés129Date d'inscriptionmardi 22 novembre 2005StatutMembreDernière intervention30 décembre 20073 13 juin 2006 à 17:09
Bonjour,
Le C# (comme d'autres langages) autorise la surcharge des méthodes. Cela veut dire que dans une classe, plusieurs méthodes peuvent avoir le même nom tant qu'elles n'ont pas la même signature (la signature est le nombre et le type des différents arguments de la méthode).
Par exemple :
<hr />void MyMethod(int i);
void MyMethod(string s);
void MyMethod(int i, object o);
<hr />
Lorsque le compilateur trouve dans un code un appel à MyMethod, il regarde le nombre et le type des paramètres pour déterminer quelle version (quelle "surcharge") il doit utiliser. Si aucune surcharge ne correspond, il émet le message d'erreur "Aucune surcharge...".
Ainsi, dans le code suivant :
<hr />
int i = 12;
MyMethod(i);
<hr />
le compilateur va comprendre qu'il doit insérer un appel à la première surcharge, qui prend un int en seul paramètre.
En revanche, les appels suivants :
<hr />MyMethod();
MyMethod(12, "test", true);<hr />
échoueraient : le premier car aucune des trois méthodes n'accepte aucun argument, le second car aucune n'accepte trois arguments.