public void EmpilerMateriau(Materiau mMateriau)
 {
     if (_taillePileMateriau == _cptMateriau)
     {
         return;
     }
     else
     {
         mMateriau.MateriauSuivant = _materiau;
         _materiau = mMateriau;
         _cptMateriau++;
     }
 }
 private void TrierMateriau(ref PileMateriau mPile, Materiau mMateriau)
 {
     if (!(mPile is null))
     {
         if (mPile.VerifierPilePleine())
         {
             mPile.EmpilerMateriau(mMateriau);
         }
         else
         {
             ViderPileCentre(ref mPile);
             mPile.EmpilerMateriau(mMateriau);
         }
     }
 }
        public Materiau DepilerMateriau()
        {
            Materiau materiauDepile = null;

            if (!PileVide())
            {
                materiauDepile = _materiau;
                _materiau      = _materiau.MateriauSuivant;
                _cptMateriau--;
            }
            else
            {
                Console.WriteLine("Impossible de dépiler un élément, la pile est vide.");
            }

            return(materiauDepile);
        }
 //Création d'un nouvelle pile d'objet Materiau
 public PileMateriau(int taillePile)
 {
     _materiau           = null;
     _taillePileMateriau = taillePile;
     _cptMateriau        = 0;
 }