友達クラスとして宣言しようとしているテンプレートクラスがあるとします。クラスを宣言するか、独自のテンプレートを渡す必要がありますか?両方ともここで動作するようですが、これを正しく行う方法に興味があります。テンプレートフレンドクラス:フォワード宣言または...?
例:
template <typename E>
class SLinkedList;
template <typename E>
class SNode {
private:
E elem;
SNode<E>* next;
friend class SLinkedList<E>;
};
それとも
template <typename E>
class SNode {
private:
E elem;
SNode<E>* next;
template <typename T>
friend class SLinkedList;
};
-
何の価値については、このコードは、データ構造とアルゴリズムの教科書から直接あるものから変更されます。しかし、この本は「『SLinkedList』
template <typename E>
class SNode {
private:
E elem;
SNode<E>* next;
friend class SLinkedList<E>;
};
したがって、この質問Cへ。新++非テンプレートクラスの明示的な特殊化をXcodeでエラーが発生します、次のコードを使用しています。
興味深い提案。乾杯 – badfilms