Wenn ich einen intelligenten Zeiger erstellen möchte ich struct tun, dass:shared_ptr mit Vorlagen
A_Ptr pA0(new A);
pA0->value = 123;
Aber, wenn ich ein Template-Struktur haben:
struct A
{
int value;
};
typedef boost::shared_ptr<A> A_Ptr;
So kann ich folgendes schreiben wie folgt aus:
template<typename T>
struct B
{
T value;
};
Und ich möchte folgendes schreiben:
B_Ptr<char> pB0(new B<char>);
pB0->value = 'w';
Also, wie soll ich das B_Ptr erklären?
Das ist ein guter Weg, um über erschwert eine einfache Antwort. –
@Martin: Wie so? Seine Formulierung der Frage ist vage genug, dass ich nicht überzeugt bin, dass er nach einem festen Typ suchte, und meine Antwort ist eine vernünftige Lösung für den Fall, dass er nicht ist. – fbrereto
Oder vielleicht: 'Vorlage Struktur T_Ptr {typedef boost :: shared_ptr > Typ; }; T_Ptr :: Typ X; ' –
UncleBens