2010-07-02 5 views
4

GCC 4.1 utilise l'en-tête <tr1/memory> et GCC 4.3 utilise-tête <memory>, je besoin d'un moyen portable d'utiliser shared_ptr avec GCC 4.3.2 et GCC 4.2.1, est-il possible de le faire sans vérifier les macros de la version GCC ou en utilisant des bibliothèques externes comme Boost?manière portable à utiliser shared_ptr dans GCC

+0

Peut-être liés - http://stackoverflow.com/questions/716904/preparation-for-the-next-c-standard –

+0

Merci pour les réponses. – Tarantula

Répondre

7

<tr1/memory> continuera de fonctionner avec gcc 4.3. Si vous voulez supporter les deux versions, utilisez simplement le nom tr1.

+0

Est-ce que ce truc tr1 n'est pas censé être supprimé quand? Je pensais que c'était quelque chose de temporaire jusqu'à ce que la norme soit vraiment approuvée. – jdehaan

+0

@jedhaan - J'ai toujours supposé que même si quelque chose 'tr1' le rendait dans la norme, il serait toujours disponible dans les fichiers d'inclusion et les espaces de noms' tr1' pour une compatibilité descendante. –

1

N'a pas essayé cette solution, mais vous pourriez être en mesure d'ajouter TR1 à la liste des inclure des répertoires sur la ligne de commande gcc (-I ou -isystem)

Questions connexes