static void Main(string[] args)
        {
            MonRobot robot  = new MonRobot("c3po");
            MonRobot robot2 = new MonRobot("crp1", 10);
            MonRobot robot3 = new MonRobot("r2d2", 10, 20);


            /// Pour expliquer les pointeurs vers objet
            MonRobot robot5 = robot;

            // Il manque les coordonnées de base
            MonRobot robot4 = new MonRobot("yoda", 10, 20, 1, 2);

            robot4.SeDeplacer(1, 2);


            robot.SeDeplacer(1, 1);
            robot.AfficherPositionnement();
            robot5.AfficherPositionnement(); // c'est le même robot en fait

            List <MonRobot> robotList = new List <MonRobot>();

            for (int i = 0; i < 10; i++)
            {
                Tuple <int, int> coordonnees = RetourneNouvellesCoordonnees();

                robotList.Add(new MonRobot("nom " + i, 10, 20, coordonnees.Item1, coordonnees.Item2)
                {
                    Taille = 10
                });
            }

            int j = 0;

            while (true)
            {
                robotList.ForEach(item =>
                {
                    Tuple <int, int> coordonnees = RetourneNouvellesCoordonnees();

                    item.SeDeplacer(coordonnees.Item1, coordonnees.Item2);

                    Thread.Sleep(100);
                });

                j++;
                if (j % 2 == 0)
                {
                    robotList.ForEach(item => {
                        Console.WriteLine("Avant : Taille du robot " + item.Nom + " : " + item.Taille);
                        Reinitialiser(item);
                        Console.WriteLine("Après : Taille du robot " + item.Nom + " : " + item.Taille);
                    });
                }
            }

            Console.ReadLine();
        }
 static void Reinitialiser(MonRobot robot) // Copie de la référence, pas des valeurs
 {
     robot.Taille = (new Random()).Next(0, 100);
     robot.SeDeplacer(0, 0);
 }