Advertisement
Guest User

Untitled

a guest
Jan 21st, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. #pragma once
  2. #ifndef _LISTE_
  3. #define _LISTE_
  4.  
  5. /**
  6. * @file Liste.h
  7. * Projet sem06-cours-Cpp2
  8. * @author l'équipe pédagogique
  9. * @version 2 - 13/01/10
  10. * @brief Composant de liste en mémoire dynamique et extensible
  11. * Structures de données et algorithmes - DUT1 Paris 5
  12. */
  13.  
  14. #include "ConteneurTDE.h"
  15.  
  16. struct Liste {
  17. ConteneurTDE c; // tableau mémorisant les éléments de la liste
  18. unsigned int nb; // nombre d'éléments stockés dans la liste
  19. };
  20.  
  21. /**
  22. * @brief Initialiser une liste vide
  23. * la liste est allouée en mémoire dynamique
  24. * @see detruire, la liste est à désallouer en fin d’utilisation
  25. * @param[out] l : la liste à initialiser
  26. * @param[in] capa : capacité de la liste
  27. * @param[in] pas : pas d’extension de la liste
  28. * @pre capa>0 et pas>0
  29. */
  30. void initialiser(Liste& l, unsigned int capa, unsigned int pas);
  31.  
  32. /**
  33. * @brief Désallouer une liste
  34. * @see initialiser, la liste a déjà été allouée en mémoire dynamique
  35. * @param[out] l : la liste
  36. */
  37. void detruire(Liste& l);
  38.  
  39. /**
  40. * @brief Longueur de liste
  41. * @param[in] l : la liste
  42. * @return la longueur de la liste
  43. */
  44. unsigned int longueur(const Liste& l);
  45.  
  46. /**
  47. * @brief Lire un élément de liste
  48. * @param[in] l : la liste
  49. * @param[in] pos : position de l'élément à lire
  50. * @return l'item lu en position pos
  51. * @pre 0<=pos<longueur(l)
  52. */
  53. MessageEnCours lire(const Liste& l, unsigned int pos);
  54.  
  55. /**
  56. * @brief Ecrire un item dans la liste
  57. * @param[in,out] l : la liste
  58. * @param[in] pos : position de l'élément à écrire
  59. * @param[in] it : l'item
  60. * @pre 0<=pos<longueur(l)
  61. */
  62. void ecrire(Liste& l, unsigned int pos, const MessageEnCours& it);
  63.  
  64. /**
  65. * @brief Insérer un élément dans une liste
  66. * @param[in,out] l : la liste
  67. * @param[in] pos : la position à laquelle l'élément est inséré
  68. * @param[in] it : l'élément inséré
  69. * @pre 0<=pos<=longueur(l)
  70. * l’insertion est faite avant la position pos
  71. */
  72. void inserer(Liste& l, unsigned int pos, const MessageEnCours& it);
  73.  
  74. /**
  75. * @brief Supprimer un élément dans une liste
  76. * @param[in,out] l : la liste
  77. * @param[in] pos : la position de l'élément à supprimer
  78. * @pre longueur(l)>0 et 0<=pos<longueur(l)
  79. */
  80. void supprimer(Liste& l, unsigned int pos);
  81.  
  82. #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement