Mit TR1 Bibliotheken des GCC und MSVC

Ich möchte die TR1-Bibliotheken, die im Lieferumfang von modernen Versionen von GCC und MSVC, aber es gibt subtile Unterschiede: in GCC, ich muss sagen,

#include <tr1/memory>
std::tr1::shared_ptr<int> X;

während in MSVC ich muss sagen,

#include <memory>
std::shared_ptr<int> X;

Habe ich zwei Fragen: 1) Ist MSVC automatisch funktionieren in der C++0x-Modus (entspricht der GCC-std=c++0x), oder funktioniert es auch in C++98/03-Modus standardmäßig? 2) Wie kann ich das vereinheitlichen der includes und namespaces? Ich dachte über ein Präprozessor-makro in der Art "INCLUDE_TR1(Speicher)" oder so ähnlich.

Zu klären, möchte ich die Verwendung der bisherigen standard-C++98/03; nicht C++0x (sonst würde es kein problem sein).

Wäre ich sehr dankbar für Anregungen!

  • std::tr1::shared_ptr funktioniert auf meinem MSVC10.
  • Welche version von MSVC?
  • MF: ich Danke Ihnen. TG: Die Allgemeine Antwort können Sie geben würde geschätzt!
InformationsquelleAutor Kerrek SB | 2011-05-10
Schreibe einen Kommentar