看板 EE_DSnP 關於我們 聯絡資訊
Setting modulus = 16... num[0] = num[1] = num[2] = num[3] = num[4] = num[5] = num[6] = num[7] = num[8] = num[9] = ... 順利的compile和執行,卻只能如上顯示。 目前正與ddd搏鬥中,也請大家幫忙看一下這一行程式碼是否有錯。 提示一下問題可能出在哪裡。 ostream& operator<<(ostream& os, const ModNum& n) { CalcMap::iterator iter; for( iter = n._varMap.begin(); iter !=n._varMap.end(); ++iter ) os << (*iter).first << " = " << (*iter).second <<endl; return os; } 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.7.59 ※ 編輯: dxi 來自: 140.112.7.59 (04/17 01:41) ※ 編輯: dxi 來自: 140.112.7.59 (04/17 01:42)
Hrothgar:直接 os<<_num; 就好了吧@@ 04/17 02:13
dxi:剛剛試過,因為上述程式碼在.cpp(class之外),發現不能 04/17 02:27
sa901119:那就 friend啊 04/17 03:36
ric2k1:為什麼 cout ModNum 你要 go through _varMap 呢? 04/17 09:39
ric2k1:_varMap 應該是空的吧! 04/17 09:40
dxi:我在class(.h)內有friend,三樓是說這裡(.cpp)也要friend嗎 04/17 09:47
dxi:空的?可是_varMap是ModNum唯一的map參數,還是說是_num? 04/17 09:48
ric2k1:不用, 但是應該就像 1F 說的吧! 04/17 09:54
dxi:成功了! 謝謝 04/17 10:06