Getsuyodev, Programming is mainly used when constructing an application. Programming requires knowledge of application domains, algorithms, and programming language expertise. Programming can be developed in different logic based on developer knowledge.

POO – File générique héritant d’un Queue

Programmez en orienté objet en C Sharp



Objectif : Rappel  de la classe générique de gestion d’une file fifo, nommée Queue<T> et située dans le namespace System.Collections.Generic. Construire une classe File<T> héritant de la classe Queue<T> permettant :
1°)d’ajouter immédiatement dans la file dès sa création un tableau linéaire de type T,
2°) et permettant de sortir immédiatement dans un tableau de type T les n premiers éléments de la file.

Les interfaces implémentées par Queue<T>

Interface Description
ICollection Contrat pour la taille, l’énumération et la synchronisation d’une collection.
IEnumerable Contrat pour l’énumération d’une collection.
IEnumerable<T> Contrat pour l’énumération d’une collection fortement typée.


La classe Queue<T> :

Schéma interne d’un objet FIFO de classe Queue :

Exercice, File fondée sur un Queue<T> :
1°) ajouter lors de la construction de la file… : rajoutez un nouveau constructeur.
2°) enlever et mettre dans un tableau… : redéfinissez la méthode Dequeue(…)

Classe File<T> héritant de Queue<T>

using System;
using System.Collections.Generic; 

class File<T> : Queue<T>
{
    public File(T[] table)
    {
        for (int i = 0; i < table.Length; i++)
            this.Enqueue(table[i]);
    }

    public virtual T[] Dequeue(int nbrElt)
    {
        T[] Table = new T[nbrElt];
        for (int k = 0; k < nbrElt; k++)
            Table[k] = this.Dequeue();
        return Table;
    }
}

Comments are closed, but trackbacks and pingbacks are open.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More