Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

petit probleme avec stl

23 réponses
Avatar
tigui1984
Bonjour a tous, je suis programeur de c++ depuis quelques ann=E9es et
j'avoue =E9prouver un petit proble avec stl... a vrai dire je suis
d=E9butant dans le concept de STL... je fait pr=E9sentement un programme
ou je doit utilis=E9 stl et jai tjs un probleme avec ca... j'arriverais
facilement a faire ce que jai a faire en utilisant le concep de liste
simplement chain=E9 mais je veux enfin comprendre le concept de STL
alors j'aurais besoin soit dun tutoriel pour finir apar comprendre ou
bien que quelqu'un regarde mon code et me disent ce qui ne va pas...
pour le tutoriel juste a continuer le topic et pour le code juste a
m'=E9crire a mon adresse mail alors merci a tout ceux qui liront ceci et
qui pouront maid=E9... merci a tous

10 réponses

1 2 3
Avatar
Fabien LE LEZ
On 10 Aug 2005 22:46:02 -0700, ""
:

Bonjour a tous [...]


Bonjour à toi.

Après avoir tenté de lire ton message, je n'ai qu'un conseil à
te donner : tente d'expliciter clairement ton problème.
Dans la plupart des cas, ça permet de trouver soi-même la
solution. Et dans le reste des cas, ça permet aux autres de t'aider.

Avatar
meow
Pour ma part je viens de débuter simultanément avec C++ et la STL. En
ce qui concerne cette dernière j'ai trouvé un tutorial en anglais
(pdf) qui me semble correct (je ne sais pas ce qu'en diront les autres
sur ce newsgroup) à l'adresse :
http://www.eecs.lehigh.edu/resources/STL-tut/prwmain.htm
Avatar
Fabien LE LEZ
On 11 Aug 2005 00:50:57 -0700, "meow" :

Pour ma part je viens de débuter simultanément avec C++ et la STL.


<Mode "J'adore être pédant">
Étant donné que la STL est un composant de C++, si tu étudies le
C++, tu étudies la STL par la même occasion.
</Mode>

D'ailleurs, je vois mal un cours de C++ sérieux ne pas aborder
l'usage de std::vector<> dans les premiers chapitres.

Avatar
Michel Michaud
Dans le message ,
<Mode "J'adore être pédant">
Étant donné que la STL est un composant de C++, si tu étudies le
C++, tu étudies la STL par la même occasion.
</Mode>


<mode pédant="vraiment">
Non, c'est la SL (bibliothèque standard) qui est un composant de
C++... Et la SL contient une version de la STL.
</mode>

(Oui, je suis toujours aussi faché que Scott Meyers ait appelé
son livre « Effective STL »...)

--
Michel Michaud
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/

Avatar
meow
<mode "newbie always on ;)">
Oh... Bein OK, eclaircissons tout de suite ces points, histoire que
j'aprenne un peu quelque chose et que je passe un peu moins pour un ane
dans les newsgroup ;)
Donc, j'avais cru comprendre que :
- le C++ était la norme du langage, ce qu'on trouve dans le
Stroustrup.
- la STL était initialement un effort ponctuel pour fournir une
librairie générique d'objets et de concepts.
- Le développement de la STL a permis d'enrichir la norme C++ en y
introduisant de nouvelles fonctionnalités... comme les
fonctions-objets, ou la redéfinition de []...
- la STL et une bibliothèque standard du C++ au meme titre que math.h
ou stdio.h pour le C. Il y a cependant une différrence entre
bibliothèque standard et norme du langage.
Je supposes que j'ai faux partout ? :)
</mode>
Avatar
Fabien LE LEZ
On Thu, 11 Aug 2005 07:49:55 -0400, "Michel Michaud" :

Non


<mode "pédant chagriné">
Snif, faut toujours que tu me contredises...
</>

Avatar
Arnaud Meurgues
Michel Michaud wrote:

<Mode "J'adore être pédant">
Étant donné que la STL est un composant de C++, si tu étudies le
C++, tu étudies la STL par la même occasion.
</Mode>



<mode pédant="vraiment">
Non, c'est la SL (bibliothèque standard) qui est un composant de
C++... Et la SL contient une version de la STL.
</mode>


<mode chipoteur="on">
Je croyais que la SL contenait un sous-ensemble de la STL. Par exemple
hash_map ne fait pas partie de la SL, mais bien de la STL.
</mode>

--
Arnaud


Avatar
Loïc Joly
- le C++ était la norme du langage, ce qu'on trouve dans le
Stroustrup.
Faux : La norme est définie dans le document ISO/IEC 14882. La livre de

Storustrup n'a aucun statut privilégié.


- la STL était initialement un effort ponctuel pour fournir une
librairie générique d'objets et de concepts.


Vrai (sauf peut-être le mot ponctuel)

- Le développement de la STL a permis d'enrichir la norme C++ en y
introduisant de nouvelles fonctionnalités... comme les
fonctions-objets, ou la redéfinition de []...


Faux : Ces fonctions existaient déjà avant. Le principal apport a été me
semble-t-il la décoréllation algo/structure permise par l'emphase donnée
aux itérateurs.

- la STL et une bibliothèque standard du C++ au meme titre que math.h
ou stdio.h pour le C. Il y a cependant une différrence entre
bibliothèque standard et norme du langage.


Faux : La STL a été par la suite intégrée dans la bibliothèque standard,
et ce qui en découle ne fait donc plus qu'un avec la norme du langage,
dans laquelle il est décrit. Certains appellent encore cette partie de
la bibliothèque standard STL.

Je supposes que j'ai faux partout ? :)
;)


--
Loïc

Avatar
Arnaud Meurgues
Fabien LE LEZ wrote:

<mode "pédant chagriné">
Snif, faut toujours que tu me contredises...
</>


T'as vu, j't'ai vengé... :-)

--
Arnaud

Avatar
Fabien LE LEZ
On 11 Aug 2005 05:16:53 -0700, "meow" :

que je passe un peu moins pour un ane
dans les newsgroup ;)


De toutes façons, il n'y a pas de son sur Usenet-fr.


Donc, j'avais cru comprendre que :
- le C++ était la norme du langage, ce qu'on trouve dans le
Stroustrup.


Non.

Le C++ est un langage.

La norme ISO-quelque_chose est un document qui décrit le
fonctionnement "idéalisé" du langage. Les implémentations sont censées
tenter de s'en approcher.

Le Stroustrup est un livre explicatif, à destination des programmeurs

La norme est un document descriptif, à destination des auteurs de
compilateurs principalement.


- la STL était initialement un effort ponctuel pour fournir une
librairie générique d'objets et de concepts.


Y'a longtemps, oui.


- la STL et une bibliothèque standard du C++ au meme titre que math.h
ou stdio.h pour le C.


Non. La bibliothèque standard (SL, Standard Library) est un ensemble
de fonctions, ainsi que de classes et de templates en C++, qui est
décrit par la norme ISO. C'est d'ailleurs pour ça qu'elle s'appelle
"standard".
La SL du langage C est à peu près un sous-ensemble de la SL du C++.

Généralement, quand on parle ici de STL en-dehors d'un contexte
historique, on parle d'un sous-ensemble de la SL. À noter que
basic_string<> est un template de la SL, mais n'est pas dans la STL.

En fait, quand on parle de STL, on veut généralement dire "les
conteneurs standard (vector, map, list, deque) et les machins qui
tournent autour".


Maintenant, la SL fait-elle partie du langage ?

Deux arguments pour le "oui" :

- elle est décrite dans la norme ;

- "new" peut lancer une exception std::bad_alloc. En d'autres
termes, le langage ne peut pas fonctionner "tout seul", sans la SL.

1 2 3