SUPINFO International University

SUPINFO Institute of Information Technology
Laboratoire Microsoft




Tous les Articles du Laboratoire Microsoft

Présentation du C# (suite et fin)
Accueil > Articles > Développement
Auteurs 
Franklin-jaurès KONGBANG

Etudiant


 Tous les articles de cet auteur

3/5

Assez Bien


182586
141/429

Surcharge d’opérateurs

Elle permet de contrôler le comportement d’un objet face à un opérateur. Imaginons que nous voudrions additionner deux objets d’une classe. Il faudrait dire à l’opérateur « + » comment se comporter pour effectuer cette addition. Illustrons ce propos par un exemple de programme :

 

using System;

namespace surcharge

{

      public class Point

      {

            public int x;

            public int y;

 

            public Point(int x,int y)

            {

                  this.x = x;

                  this.y = y;

            }

 

            public static Point operator +(Point a, Point b)

            {

                  return new Point(a.x + b.x, a.y + b.y);

            }

 

      }

      class Class1

      {

            [STAThread]

            static void Main(string[] args)

            {

                  Point monpoint = new Point(1,2);

                  Point tonpoint = new Point(3,4);

                  Point somme = monpoint + tonpoint;

                 

                  Console.WriteLine("les points: monpoint({0},{1}), tonpoint({2},{3})",monpoint.x,monpoint.y,tonpoint.x,tonpoint.y);

                  Console.WriteLine("la somme est: somme({0},{1})",somme.x,somme.y);

                  Console.ReadLine();

            }

      }

}  

 

Sortie console :

 

Le mot clef operator nous permet de surcharger les opérateurs.  Les opérateurs du c# sont : +,-, !,~,++,--, true,false,*,/,%,&,|,^,<<,>>,==, !=,< ,>,<=,>=.

La méthode est déclarée static , elle prend deux arguments de type Point (puisque nous voulons additionner les objets de cette classe) et retourne une valeur de type Point également.

   


Sommaire
1. Les collections
2. les structures
3. les classes
4. Les propriétés
5. Les exceptions
6. Héritage et polymorphisme
7. Les interfaces
8. Surcharge d’opérateurs
9. La délégation
10. Les évènements



En Savoir Plus 
Evaluez cet article 


Pour afficher ou poster un commentaire, cliquez sur ce lien : Forum-Microsoft



Retrouvez ci-dessous les autres sections du Laboratoire Microsoft