[問題] 樣板類別?

看板C_and_CPP (C/C++)作者 (彼德さん)時間12年前 (2014/02/27 18:19), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Linux 問題(Question): 在練習資料結構的二元搜尋樹時,編譯器給出沒辦法訪問private資料的錯誤。 查了一下發現是沒有把調用的class設定為friend,可是設定好後下一個問題馬上跑了出來@@" 我的class分成兩個: template <class T> class TreeNode template <class K, class E> class BST 如果直接把friend class BST<K, E>寫到TreeNode類別裡面去的話,編譯器會丟K, E沒有 被宣告在TreeNode的範圍裡面。所以我改寫成template <class T, class K, class E>TreeNode 但這樣一改原本BST裡面有使用TreeNode<T>的地方全部都要改成TreeNode<T, K, E>了 想請問一下有什麼方法可以讓不同template的class直接去訪問對方的private資料,但又 不用像這樣把宣告改來改去嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.142.151.172

02/27 19:02, , 1F
template <class K, class E> friend class BST;
02/27 19:02, 1F

02/28 07:19, , 2F
已解決,謝謝!!
02/28 07:19, 2F
文章代碼(AID): #1J3n4hl1 (C_and_CPP)
文章代碼(AID): #1J3n4hl1 (C_and_CPP)