OVH Cloud OVH Cloud

Documentation STL

35 réponses
Avatar
Hamiral
Bonjour,

Je cherche sur le web mais je ne trouve jamais rien de satisfaisant, alors
je poste ici : connaîtriez-vous une bonne référence pour la STL ? Par
"bonne référence", j'entends une référence facile à utiliser, un peu comme
la fameuse javadoc ... Il doit bien y avoir une documentation en doxygen de
la STL ?

Bien sûr il y a http://www.sgi.com/tech/stl/ qui estbien faite mais jusqu'à
un certain point : j'ai mal à la tête rien qu'en essayant de lire les
documentations des méthodes de std::string, par exemple. Tout est trop
condensé, très mal présenté, bref vous l'aurez compris, ce que je recherche
est une doc claire et facile à utiliser.

Donc, si l'un d'entre vous à ça sous le coude, je suis preneur ...

Et merci d'avance !
--
Hamiral

10 réponses

1 2 3 4
Avatar
Fabien LE LEZ
On Tue, 14 Mar 2006 23:00:28 +0100, Hamiral :

j'ai mal à la tête rien qu'en essayant de lire les
documentations des méthodes de std::string


C'est pas étonnant, vue la tronche de std::string...

Mais je ne comprends pas bien pourquoi tu veux étudier d'un coup
l'intégralité des fonctions membres de std::string. Une référence,
c'est comme un annuaire : on a un besoin précis (contacter Dupont, ou
chercher le dernier 'x' dans une chaîne), on trouve le renseignement
(0123456789 ou find_last_of), et on referme le bouquin.

Si tu es dans une phase d'apprentissage, i.e. tu découvres
std::string, c'est un cours qu'il te faut, pas une référence.

Avatar
Arnaud Meurgues
Fabien LE LEZ wrote:

Mais je ne comprends pas bien pourquoi tu veux étudier d'un coup
l'intégralité des fonctions membres de std::string.


Il demande une doc claire et agréable. Franchement, moi, la réponse
m'intéresse (peut-être sur msdn ?).
--
Arnaud

Avatar
Sylvain
Arnaud Meurgues wrote on 14/03/2006 23:47:
Fabien LE LEZ wrote:

Mais je ne comprends pas bien pourquoi tu veux étudier d'un coup
l'intégralité des fonctions membres de std::string.


Il demande une doc claire et agréable. Franchement, moi, la réponse
m'intéresse (peut-être sur msdn ?).


M$ supporte très mal la STL, sa doc dans le MSDN en est à l'image.

entre le cours (qui serait le seul moyen de découvrir) et la référence
(qui servirait à valider ce que l'on a appris et oublié), le "pocket
reference" [1] de OReilly est assez agréable; un peu dans l'esprit
javadoc où l'on peut découvrir et piocher sans déjà connaitre ce que
l'on cherche.

Sylvain.

[1]: http://www.oreilly.com/catalog/stlpr/


Avatar
loufoque

Je cherche sur le web mais je ne trouve jamais rien de satisfaisant, alors
connaîtriez-vous une bonne référence pour la STL ?


La STL est un acronyme inapproprié créé et documenté en premier par HP.
C'était globalement équivalent aux containers et aux templates
d'algorithmes qui font partie de la bibliothèque standard C++ actuelle.


Bien sûr il y a http://www.sgi.com/tech/stl/


Il s'agit de la référence de la STL de SGI. C'est pas trop mal mais
incomplet, et en plus c'est la documentation de l'implémentation de SGI
avec ses extensions non standard.

La première source de documentation est celle de ton implémentation.
Donc par exemple soit MSDN [1] si tu utilises MSVC++, soit la doc de GCC
[2] si tu utilises GCC (ils ont des manpages et des docs doxygen,
apparemment tu apprécies ce genre de trucs).

[1] :
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcstdlib/html/vcoriStandardCLibraryReference.asp

[2] : ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/

On trouve aussi des références de la bibliothèque standard comme celles-ci :
http://www.roguewave.com/support/docs/sourcepro/edition9/html/stdlibref/index.html
http://svn.apache.org/viewcvs.cgi/*checkout*/incubator/stdcxx/trunk/doc/stdlibref/index.html

http://www.dinkumware.com/manuals/reader.aspx?lib=cpp
http://www.cppreference.com/

Enfin tu peux aussi te procurer la norme [1], la version actuelle étant
à 30 dollars.
On peut obtenir une version de 1997 [2] ou un brouillon de la prochaine
version [3] gratuitement.
Il y a aussi un document qui contient toutes les modifications entre
1998 et 2003 [4].

[1] :
http://webstore.ansi.org/ansidocstore/product.asp?sku=INCITS%2FISO%2FIEC+14882%2D2003
[2] : http://www.open-std.org/jtc1/sc22/open/n2356/
[3] : http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1905.pdf
[4] : http://www.acceleratedcpp.com/authors/koenig/c++std/revisions.pdf

Avatar
Fabien LE LEZ
On Wed, 15 Mar 2006 01:33:45 +0100, loufoque
:

et en plus c'est la documentation de l'implémentation de SGI
avec ses extensions non standard.



La première source de documentation est celle de ton implémentation.


C'est pas mieux, à moins qu'on veuille faire du code spécifique à un
compilo (ou à une SL).


Enfin tu peux aussi te procurer la norme


Qu'il trouvera certainement plus lisible que la doc de SGI ;-p

Avatar
Gabriel Dos Reis
loufoque writes:

[...]

| > Bien sûr il y a http://www.sgi.com/tech/stl/
|
| Il s'agit de la référence de la STL de SGI. C'est pas trop mal mais
| incomplet, et en plus c'est la documentation de l'implémentation de
| SGI avec ses extensions non standard.
|
| La première source de documentation est celle de ton implémentation.
| Donc par exemple soit MSDN [1] si tu utilises MSVC++, soit la doc de
| GCC [2] si tu utilises GCC (ils ont des manpages et des docs doxygen,
| apparemment tu apprécies ce genre de trucs).

L'implémentation de GCC est basée sur celle de SGI (produite par Matt
Austern lorsqu'il travaillait avec Alex Stepanov chez SGI).

[...]

| Enfin tu peux aussi te procurer la norme [1], la version actuelle
| étant à 30 dollars.

ou

http://www.awprofessional.com/bookstore/product.asp?isbn01309564&redir=1

qui est plus pédagogique que la norme.

-- Gaby
Avatar
kanze
loufoque wrote:

[...]

Enfin tu peux aussi te procurer la norme [1], la version
actuelle étant à 30 dollars. On peut obtenir une version de
1997 [2] ou un brouillon de la prochaine version [3]
gratuitement.


Je signale à tout hazard, qu'il y a eu d'importantes
modifications dans std::string entre la CD2 (la version de 1997)
et la version finale de la norme. Si j'avais à procurer une
version de la norme aujourd'hui, je crois que c'est la version
papier publié par Wiley : "The C++ Standard", ISBN 0 470 84674-7.

--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

Avatar
Yoxoman

Si tu es dans une phase d'apprentissage, i.e. tu découvres
std::string, c'est un cours qu'il te faut, pas une référence.


Ah bon ? Il y a des docs qu'il ne faut pas consulter, si on veut
apprendre ? :-)

--
"Yo!"
Martin Heidegger (trad. Terrence Malick)

Avatar
Jean-Marc Bourguet
Yoxoman writes:


Si tu es dans une phase d'apprentissage, i.e. tu découvres
std::string, c'est un cours qu'il te faut, pas une référence.


Ah bon ? Il y a des docs qu'il ne faut pas consulter, si on veut
apprendre ? :-)


Il y a des docs qui ne sont pas adaptees a l'aprentissage. C'est
souvent le cas pour ce qui se veut une reference complete et examine
donc des details rarement utilises avec autant d'attention que les cas
courants et sans les separer de ceux-ci.

A+

--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org


Avatar
Yoxoman

Il y a des docs qui ne sont pas adaptees a l'aprentissage. C'est
souvent le cas pour ce qui se veut une reference complete et examine
donc des details rarement utilises avec autant d'attention que les cas
courants et sans les separer de ceux-ci.


Et pour apprendre ces "détails rarement utilisés", on fait comment, sans
ce type de doc ?

--
"Yo!"
Martin Heidegger (trad. Terrence Malick)

1 2 3 4