 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
tigui1984@gmail.com Guest
|
Posted: Thu Aug 11, 2005 5:46 am Post subject: petit probleme avec stl |
|
|
Bonjour a tous, je suis programeur de c++ depuis quelques années et
j'avoue éprouver un petit proble avec stl... a vrai dire je suis
débutant dans le concept de STL... je fait présentement un programme
ou je doit utilisé 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é 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'écrire a mon adresse mail alors merci a tout ceux qui liront ceci et
qui pouront maidé... merci a tous
|
|
| Back to top |
|
 |
Fabien LE LEZ Guest
|
Posted: Thu Aug 11, 2005 7:18 am Post subject: Re: petit probleme avec stl |
|
|
On 10 Aug 2005 22:46:02 -0700, "tigui1984 (AT) gmail (DOT) com"
<tigui1984 (AT) gmail (DOT) com>:
| Quote: | 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.
|
|
| Back to top |
|
 |
meow Guest
|
Posted: Thu Aug 11, 2005 7:50 am Post subject: Re: petit probleme avec stl |
|
|
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
|
|
| Back to top |
|
 |
Fabien LE LEZ Guest
|
Posted: Thu Aug 11, 2005 8:28 am Post subject: Re: petit probleme avec stl |
|
|
On 11 Aug 2005 00:50:57 -0700, "meow" <ben (AT) agat (DOT) net>:
| Quote: | 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.
|
|
| Back to top |
|
 |
Michel Michaud Guest
|
Posted: Thu Aug 11, 2005 11:49 am Post subject: Re: petit probleme avec stl |
|
|
Dans le message [email]cu2mf11gsn58bf7cl69v53eigt7613h168 (AT) 4ax (DOT) com[/email],
Fabien LE LEZ <gramster (AT) gramster (DOT) com> a écrit :
| Quote: | 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 [email]mm (AT) gdzid (DOT) com[/email]
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
|
|
| Back to top |
|
 |
meow Guest
|
Posted: Thu Aug 11, 2005 12:16 pm Post subject: Re: petit probleme avec stl |
|
|
<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>
|
|
| Back to top |
|
 |
Fabien LE LEZ Guest
|
Posted: Thu Aug 11, 2005 12:25 pm Post subject: Re: petit probleme avec stl |
|
|
On Thu, 11 Aug 2005 07:49:55 -0400, "Michel Michaud" <mm (AT) gdzid (DOT) com>:
<mode "pédant chagriné">
Snif, faut toujours que tu me contredises...
</>
|
|
| Back to top |
|
 |
Arnaud Meurgues Guest
|
Posted: Thu Aug 11, 2005 12:30 pm Post subject: Re: petit probleme avec stl |
|
|
Michel Michaud wrote:
| Quote: | 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
|
|
| Back to top |
|
 |
Loïc Joly Guest
|
Posted: Thu Aug 11, 2005 12:31 pm Post subject: Re: petit probleme avec stl |
|
|
meow a écrit :
| Quote: | - 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é.
| Quote: | - 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)
| Quote: | - 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.
| Quote: | - 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.
| Quote: | Je supposes que j'ai faux partout ?
 |
--
Loïc
|
|
| Back to top |
|
 |
Arnaud Meurgues Guest
|
Posted: Thu Aug 11, 2005 12:31 pm Post subject: Re: petit probleme avec stl |
|
|
Fabien LE LEZ wrote:
| Quote: | mode "pédant chagriné"
Snif, faut toujours que tu me contredises...
/
|
T'as vu, j't'ai vengé... :-)
--
Arnaud
|
|
| Back to top |
|
 |
Fabien LE LEZ Guest
|
Posted: Thu Aug 11, 2005 12:37 pm Post subject: Re: petit probleme avec stl |
|
|
On 11 Aug 2005 05:16:53 -0700, "meow" <ben (AT) agat (DOT) net>:
| Quote: | 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.
| Quote: | 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.
| Quote: | - la STL était initialement un effort ponctuel pour fournir une
librairie générique d'objets et de concepts.
|
Y'a longtemps, oui.
| Quote: | - 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.
|
|
| Back to top |
|
 |
Fabien LE LEZ Guest
|
Posted: Thu Aug 11, 2005 12:41 pm Post subject: Re: petit probleme avec stl |
|
|
On Thu, 11 Aug 2005 14:30:22 +0200, Arnaud Meurgues
<news.arnaud (AT) meurgues (DOT) non.fr.invalid>:
| Quote: | Je croyais que la SL contenait un sous-ensemble de la STL.
|
En fait, faudrait se mettre d'accord sur la signification de "STL" :
parle-t-on de la STL en tant que bibliothèque développée
indépendamment de la norme, ou du sous-ensemble d'icelle qui a été
reprise dans la norme.
En fait, ce qui m'embête, c'est le mot "standard". De quel droit ce
truc s'appelle-t-il "Standard quelque chose" s'il est indépendant de
la norme ?
|
|
| Back to top |
|
 |
Laurent Deniau Guest
|
Posted: Thu Aug 11, 2005 12:44 pm Post subject: Re: petit probleme avec stl |
|
|
Fabien LE LEZ wrote:
| Quote: | On 11 Aug 2005 05:16:53 -0700, "meow" <ben (AT) agat (DOT) net>:
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.
|
Et aussi des programmeurs commun. Il y a des points important qui sont
dans la norme et pas dans le TC++PL3.
a+, ld.
|
|
| Back to top |
|
 |
Arnaud Meurgues Guest
|
Posted: Thu Aug 11, 2005 1:26 pm Post subject: Re: petit probleme avec stl |
|
|
Fabien LE LEZ wrote:
| Quote: | En fait, ce qui m'embête, c'est le mot "standard". De quel droit ce
truc s'appelle-t-il "Standard quelque chose" s'il est indépendant de
la norme ?
|
Il ne s'appelle pas "standard", il s'appelle "STepanov et Lee", du nom
de leurs créateurs. ;-)
Bon, ok, c'est supposé vouloir dire "Standard Template Library" aussi.
Mais bon, un standard, c'est ce que quelqu'un a décidé d'appeler
standard un jour (VHS, par exemple). Et l'on peut supposer qu'ils
voulaient faire quelque chose de standard.
Et je ne crois pas qu'il y ait besoin d'une autorisation spéciale pour
appeler quelque chose "standard".
--
Arnaud
|
|
| Back to top |
|
 |
tigui1984@gmail.com Guest
|
Posted: Fri Aug 12, 2005 3:14 am Post subject: Re: petit probleme avec stl |
|
|
Bon bien Comment pourais-je décrire mon probleme... apres réfelxion
je vais vous montrer le bout de code me connant mal a la tete
typedef list<Super7_Billet*> Billet;
typedef Billet::iterator itBillet;
void Add_Billet(Billet *);
void Delete_Billet(Billet );
void Game(int,long int);
void Instruction();
void New_Game();
void Add_Billet(Billet *Liste)
{
Super7_Billet* new_Billet = new Super7_Billet;
itBillet it;
new_Billet->SetBillet();
string YorN="N";
do
{
cout<<"Désirez-vous l'Extra avec votre Billet? (O/N) ";
cin>>YorN;
YorN=string_toupper(YorN);
if (YorN=="O")
new_Billet->SetExtra();
if (YorN.length()!=1||(YorN[0]!='O'&&YorN[0]!='N'))
{
Write_Warning("Entrée Invalide");
Pause();
}
}
while(YorN.length()!=1||(YorN[0]!='O'&&YorN[0]!='N'));
Liste.push_back(new_Billet);
}
void Delete_Billet(Billet Liste)
{
itBillet it;
int i=0;
for (it = Liste.begin(),i=0; it != Liste.end(); it++,i++)
{
delete *it;
cout<
}
cout<
Liste.clear();
}
void Game(int Week,long int Money)
{
Billet Liste_Billet;
int NbBillet=0,Error;
string sChoix;
clrscr();
do
{
Error=1;
Write_Warning("Semaine ", Week);
cout<<"Argent: "<
<<"Billets: "<
<
<<"(A)cheter un billet - (T)irage - (V)oir les
numeros"<
<<"(R)esultat antérieur - (Q)uitter"<
<
<<"Faite Votre Choix: ";
cin>>sChoix;
sChoix=string_toupper(sChoix);
if (sChoix.length()==1)
{
switch (sChoix[0])
{
case 'A':
{
Add_Billet(&Liste_Billet);
}
break;
case 'T':
{
Error=0;
}
break;
case 'V':
{
}
break;
case 'R':
{
}
break;
case 'Q':
{
Error=0;
}
break;
default:
{
Write_Warning("Entrée Invalide");
Pause();
}
break;
}
}
}
while (Error!=0);
Delete_Billet(Liste_Billet);
}
Le probleme cé que jarrive pas a utilisé le push_back() il me dit que
ce n'est pas défini et si jenleve les étaoile (*) et les perluette
(&) je n'arrive pas effacer la memmoire alouer donc ma memmoire reste
donc attribuer et ne se vide pas :S que faire
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|