C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

SGI STL

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French)
View previous topic :: View next topic  
Author Message
Olive
Guest





PostPosted: Wed Sep 03, 2003 3:58 pm    Post subject: SGI STL Reply with quote



Bonjour a tous,

Pouvez vous me dire la demarche pour
installer la STL (de SGI) en lieu et place
de la stl installé avec visual.
car cette derniere n'est vraiment pas tres stable....


Merci,

Olivier

Back to top
Julien Blanc
Guest





PostPosted: Wed Sep 03, 2003 4:19 pm    Post subject: Re: SGI STL Reply with quote



Olive wrote:
Quote:
Bonjour a tous,

Pouvez vous me dire la demarche pour
installer la STL (de SGI) en lieu et place
de la stl installé avec visual.
car cette derniere n'est vraiment pas tres stable....

http://www.sgi.com/tech/stl/FAQ.html

--
Julien Blanc. Equipe cadp. VERIMAG. Grenoble. France.


Back to top
Michaël Cortex
Guest





PostPosted: Wed Sep 03, 2003 4:43 pm    Post subject: Re: SGI STL Reply with quote



Olive wrote:
Quote:
Bonjour a tous,

Pouvez vous me dire la demarche pour
installer la STL (de SGI) en lieu et place
de la stl installé avec visual.
car cette derniere n'est vraiment pas tres stable....

Que lui reproches-tu ? As-tu des exemples ? Si tu ne la trouves pas stable,
c'est sûrement que tu l'utilises mal, car beaucoup de gens s'en servent (y
compris moi, mais je ne suis pas une référence Smile ) et c'est
l'implémentation de Dinkumware, réputée comme une des meilleures...
--
<=- Michaël "Cortex" Monerau -=>



Back to top
Benoît Sibaud
Guest





PostPosted: Thu Sep 04, 2003 7:53 am    Post subject: Re: SGI STL Reply with quote

Bonjour,

Quote:
Que lui reproches-tu ? As-tu des exemples ? Si tu ne la trouves pas stable,
c'est sûrement que tu l'utilises mal, car beaucoup de gens s'en servent (y
compris moi, mais je ne suis pas une référence Smile ) et c'est
l'implémentation de Dinkumware, réputée comme une des meilleures...

Une question qui me tarabuste depuis quelques temps, sur
std::map::erase, quelle implémentation est la bonne (Dinkumware vs GCC
et SGI) ?

Dinkumware
http://www.dinkumware.com/manuals/reader.aspx?b=p/&h=map.html#map::erase
iterator erase(iterator where);
iterator erase(iterator first, iterator last);
size_type erase(const Key& keyval);

GCC STL v3
http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-3.3/classstd_1_1map.html#std_1_1mapa23
void erase (iterator __position)
size_type erase (const key_type &__x)
void erase (iterator __first, iterator __last)

SGI STL
http://www.sgi.com/tech/stl/Map.html
void erase(iterator pos)
size_type erase(const key_type& k)
void erase(iterator first, iterator last)

--
Benoît Sibaud


Back to top
Michaël Cortex
Guest





PostPosted: Thu Sep 04, 2003 8:25 am    Post subject: Re: SGI STL Reply with quote

Loïc Joly wrote:
Quote:
Michaël Cortex wrote:
Olive wrote:

Bonjour a tous,

Pouvez vous me dire la demarche pour
installer la STL (de SGI) en lieu et place
de la stl installé avec visual.
car cette derniere n'est vraiment pas tres stable....


Que lui reproches-tu ? As-tu des exemples ?

J'en ai eu des exemples avec la version 6.0 de visual C++, mais
ceux-ci ont tous disparus quand j'ai appliqué les patch disponibles
gratuitement sur le site du fournisseur de la bibliothèque
([url]www.dinkumware.com)[/url].

En effet, il y avait des problèmes (strings qui se terminaient à '',
etc...), mais comme tu l'as dit, les patchs corrigent cela.

Olive, quelle version de visual as-tu ?
--
<=- Michaël "Cortex" Monerau -=>



Back to top
Michaël Cortex
Guest





PostPosted: Thu Sep 04, 2003 8:27 am    Post subject: Re: SGI STL Reply with quote

Benoît Sibaud wrote:
Quote:
Une question qui me tarabuste depuis quelques temps, sur
std::map::erase, quelle implémentation est la bonne (Dinkumware vs GCC
et SGI) ?

Je ne saisis pas bien la question... les 3 implémentations ont les mêmes
prototypes de fonctions (mais pas dans le même ordre dans ce que tu donnes).
Où vois-tu la différence ?
--
<=- Michaël "Cortex" Monerau -=>



Back to top
Michaël Cortex
Guest





PostPosted: Thu Sep 04, 2003 9:48 am    Post subject: Re: SGI STL Reply with quote

Benoît Sibaud wrote:
Quote:
Je ne saisis pas bien la question... les 3 implémentations ont les
mêmes prototypes de fonctions (mais pas dans le même ordre dans ce
que tu donnes). Où vois-tu la différence ?

La valeur de retour est un itérateur ou void suivant les cas.

Dinkumware iterator erase(iterator where);
GCC STL v3 void erase(iterator __position)
SGI STL void erase(iterator pos)

Dinkumware iterator erase(iterator first, iterator last);
GCC STL v3 void erase(iterator __first, iterator __last)
SGI STL void erase(iterator first, iterator last)

ah... exact. Je n'avais pas vu :S
Je vais voir dans le Stroustup...

p. 487 :
les 2 erase avec les iterateurs retournent void, celle avec const key_type
retourne size_type.

Dinkumware s'est donnée une liberté (volontairement ?) bien bizarre... Quel
iterator on obtient après un erase () ? (end() ?), ou même après un erase
(begin(), begin()+1) ?
--
<=- Michaël "Cortex" Monerau -=>



Back to top
Gabriel Dos Reis
Guest





PostPosted: Thu Sep 04, 2003 10:35 am    Post subject: Re: SGI STL Reply with quote

Alain Migeon <agm (AT) dk (DOT) rovsing> writes:

Quote:
Sinon, petite question. Pourquoi une fonction erase retournerait-elle un
iterator?

parce qu'elle peut. ;-)

-- Gaby

Back to top
Olive
Guest





PostPosted: Thu Sep 04, 2003 11:13 am    Post subject: Re: SGI STL Reply with quote

MErci ce petit patch a resolus la pluspart de mes pb !
thx a lot.


Michaël Cortex wrote:
Quote:
Loïc Joly wrote:

Michaël Cortex wrote:

Olive wrote:


Bonjour a tous,

Pouvez vous me dire la demarche pour
installer la STL (de SGI) en lieu et place
de la stl installé avec visual.
car cette derniere n'est vraiment pas tres stable....


Que lui reproches-tu ? As-tu des exemples ?

J'en ai eu des exemples avec la version 6.0 de visual C++, mais
ceux-ci ont tous disparus quand j'ai appliqué les patch disponibles
gratuitement sur le site du fournisseur de la bibliothèque
([url]www.dinkumware.com)[/url].


En effet, il y avait des problèmes (strings qui se terminaient à '',
etc...), mais comme tu l'as dit, les patchs corrigent cela.

Olive, quelle version de visual as-tu ?
--
=- Michaël "Cortex" Monerau -=




Back to top
Alain Migeon
Guest





PostPosted: Thu Sep 04, 2003 11:19 am    Post subject: Re: SGI STL Reply with quote

In article <m3llt4q1s9.fsf (AT) uniton (DOT) integrable-solutions.net>,
[email]gdr (AT) integrable-solutions (DOT) net[/email] says...
Quote:
Alain Migeon <agm (AT) dk (DOT) rovsing> writes:

| Sinon, petite question. Pourquoi une fonction erase retournerait-elle un
| iterator?

parce qu'elle peut. Wink

Elle pourrait aussi imprimer : "Adieu, monde cruel...". Wink)

Mais, plus sérieusement, quelle est la valeur retournée?
Une copie de l'iterator effacé?
L'élément suivant dans la liste dans le cas de <vector>?
end ()?

Alain

Back to top
Arnaud Debaene
Guest





PostPosted: Thu Sep 04, 2003 1:09 pm    Post subject: Re: SGI STL Reply with quote

Alain Migeon <agm (AT) dk (DOT) rovsing> wrote


Quote:
Sinon, petite question. Pourquoi une fonction erase retournerait-elle un
iterator?
Est-ce pour renvoyer un iterator pointant sur le end () du map, dans le
cas o on chercherait supprimer un l ment n'appartenant pas
ce map?

D'après la doc de Dinkumware :
Return Value :
<snip> a bidirectional iterator that designates the first element
remaining beyond any elements removed, or a pointer to the end of the
map if no such element exists.

Arnaud

Back to top
kanze@gabi-soft.fr
Guest





PostPosted: Thu Sep 04, 2003 2:12 pm    Post subject: Re: SGI STL Reply with quote

"Michaël Cortex" <cort (AT) meloo (DOT) com> wrote

Quote:
Benoît Sibaud wrote:
Je ne saisis pas bien la question... les 3 implémentations ont les
mêmes prototypes de fonctions (mais pas dans le même ordre dans ce
que tu donnes). Où vois-tu la différence ?

La valeur de retour est un itérateur ou void suivant les cas.

Dinkumware iterator erase(iterator where);
GCC STL v3 void erase(iterator __position)
SGI STL void erase(iterator pos)

Dinkumware iterator erase(iterator first, iterator last);
GCC STL v3 void erase(iterator __first, iterator __last)
SGI STL void erase(iterator first, iterator last)

ah... exact. Je n'avais pas vu :S Je vais voir dans le Stroustup...

p. 487 :
les 2 erase avec les iterateurs retournent void, celle avec const
key_type retourne size_type.

Dinkumware s'est donnée une liberté (volontairement ?) bien
bizarre...

Bizarre, je ne sais pas. Il me paraît bien utile, et un peu bizarre que
les fonctions renvoient void dans la norme. Pourquoi est-ce qu'on
renvoie les itérateurs dans les séquences, et non dans les collections
associatives. Il y a au moins une manque d'orthogonalité.

En fait, je crois que Dinkumware a fait la décision avant que la norme a
été fixée. Et ne l'a pas changé par la suite de peur de casser du code
existant. D'autant plus que pratiquement, la seule fois qu'une
application vera la différence, c'est si elle prend l'adresse de la
fonction membre.

Quote:
Quel iterator on obtient après un erase () ? (end() ?),

Tu veux dire, en supposant que la fonction existait ?

Quote:
ou même après un erase (begin(), begin()+1) ?

Dans tous les cas, l'itérateur renvoyé par erase() doit désigner le
premier élément suivant le dernier élément effacer, ou end() s'il n'y a
pas de tel élément. L'idiome consacré est :

Collection::iterator i = c.begin() ;
while ( i != c.end() ) {
if ( condition( *i ) ) {
i = c.erase( i ) ;
} else {
++ i ;
}
}

J'avoue ne pas comprendre pourquoi cette idiome doit marcher avec des
séquences, et non avec des collections associatives.

--
James Kanze GABI Software mailto:kanze (AT) gabi-soft (DOT) fr
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16

Back to top
Gabriel Dos Reis
Guest





PostPosted: Thu Sep 04, 2003 6:58 pm    Post subject: Re: SGI STL Reply with quote

Alain Migeon <agm (AT) dk (DOT) rovsing> writes:

Quote:
In article <m3llt4q1s9.fsf (AT) uniton (DOT) integrable-solutions.net>,
[email]gdr (AT) integrable-solutions (DOT) net[/email] says...
Alain Migeon <agm (AT) dk (DOT) rovsing> writes:

| Sinon, petite question. Pourquoi une fonction erase retournerait-elleun
| iterator?

parce qu'elle peut. ;-)

Elle pourrait aussi imprimer : "Adieu, monde cruel...". Wink)

ça elle peut pas toujours :-)

Quote:
Mais, plus sérieusement, quelle est la valeur retournée?

Je ne sais pas mais , je présume que c'est comme dans le cas des
suites (i.e. list, vector, ..).

Quote:
Une copie de l'iterator effacé?

Non.

Quote:
L'élément suivant dans la liste dans le cas de <vector>?

s'il existe, sinon end().

-- Gaby

Back to top
Benoît Sibaud
Guest





PostPosted: Fri Sep 12, 2003 5:00 pm    Post subject: Re: SGI STL Reply with quote

Quote:
Ce n'est pas ce que j'y vois (heureusement !). Là où tu vois
ça, c'est dans l'explication de ce qui est nécessaire pour le
conteneur utilisable pour instancier stack. Regarde un peu
plus haut et tu verras que stack a bien top/pop/push.

Effectivement, je me bats ma coulpe honteusement.

--
Benoît Sibaud


Back to top
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French) All times are GMT
Page 1 of 1

 
Jump to:  
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


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.