Wie deklariere ich eine Template-Struktur / Klasse als Freund?
Möchte ich Folgendes tun:
template <typename T>
struct foo
{
template <typename S>
friend struct foo<S>;
private:
//...
};
aber mein compiler (VC8) drosseln:
error C3857: 'foo<T>': multiple template parameter lists are not allowed
Ich würde gerne alle möglichen Instanziierungen template struct foo
Freunde von foo<T>
für alle T
.
Wie mache ich diese Arbeit ?
EDIT:
template <typename T>
struct foo
{
template <typename>
friend struct foo;
private:
//...
};
scheint zu kompilieren, aber ist es richtig ? Freunde und Vorlagen haben sehr unnatürlich syntax.
InformationsquelleAutor der Frage Alexandre C. | 2010-07-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
wird dies jedoch machen alle Vorlagen Freunde untereinander.
Aber ich denke, das ist, was Sie wollen?
InformationsquelleAutor der Antwort Anycorn