Ich migiere mein Projekt nach C++ 11 und versuche so viel wie möglich von der Standardbibliothek zu verwenden.Ein 'typedef' für eine Template-Funktion (boost :: make_shared)
Bevor ich die Migration abgeschlossen habe, brauche ich einen schnellen Weg, um zwischen Boost und STL-Implementierung von shared_ptr
(für Benchmarks, Komponententests usw.) zu wechseln.
So definiert ich einen Alias für shared_ptr
wie folgt aus:
#ifdef _USE_BOOST_
template <class C>
using shared_ptr = boost::shared_ptr<C>
#else
template <class C>
using shared_ptr = std::shared_ptr<C>
#endif
jetzt brauche ich das gleiche für make_shared
zu tun ... Aber wie? Makro? Ein Wrapper? Ich mag beide nicht wirklich. Was sind die Alternativen?
Sie haben nicht viel anderes übrig, als einen schnellen Wrapper zu schreiben. – Puppy