2008-10-13 6 views

Répondre

8

L'implémentation de Dinkumware STL (fournie avec VS2005) est plutôt bonne. Le STL est une bibliothèque à usage général et il est donc presque toujours possible d'écrire quelque chose de mieux pour des cas d'utilisation très spécifiques.

Je suis au courant des implémentations alternatives, mais je ne les ai jamais utilisé avec VS2005 suivants:

SGI Standard Template Library 3.3: http://www.sgi.com/tech/stl/

STLport 5.1.6 (dérivé de la mise en œuvre SGI) : http://www.stlport.org/

SGI et STLport implémentent la vérification taille/longueur comme premier test dans l'opérateur == et vous pourriez l'aimer. Ils sont également gratuits à télécharger et à utiliser.

Passer d'une implémentation STL à une autre, en théorie, devrait être facile. Cependant, certains collègues m'ont dit que ce n'est pas toujours le cas. Ils ont trébuché sur les bogues du compilateur, ont constaté qu'ils avaient par inadvertance utilisé des fonctionnalités non standard, ou se sont appuyés sans le savoir sur un comportement spécifique à une implémentation STL particulière.

Une bonne chose à propos de l'implémentation de Dinkumware STL est qu'il a été bien testé avec le compilateur VS2005 C++.

Si vous décidez d'essayer ces alternatives, bonne chance! Et laissez-nous savoir comment ça se passe.

+0

Je crois que Dinkumware a livré une version de la STL qui corrige quelques bugs dans la version livrée avec Visual Studio 2005. Consultez la FAQ sur Dinkumware. –

3

Que diriez-vous de STLPort?

http://www.stlport.org/

+0

J'utilise Port STL avec VC6 jusqu'à VS2008 et il fonctionne bien. –

2

Dinkumware produit prétendument un des plus conformes aux normes mises en œuvre de la bibliothèque standard C++. Vous pouvez obtenir un binary licence pour VS2005 pour 200 $.

+1

La liste STL fournie avec Visual Studio est celle de Dinkumware. – Terminus

+0

Il est basé sur Dinkumware, mais il est en réalité assez différent du produit vendu par Dinkumware. –

2

Il ya aussi Apache STL, mais comme d'autres l'ont noté, je crois que Dinkumware est votre meilleur pari.

2

En fonction de vos contraintes, vous trouverez peut-être la mise en œuvre STL Electronic Arts comme intéressant: EASTL