看板 EE_DSnP 關於我們 聯絡資訊
唔,狀況是這樣的,我在Hash::check()裡面宣告一個iterator it來走完hash 因為hashnode是pair<Hashkey, HashData>,所以我就用 it->first和it->second 去取pair裡面的東西 可是當我把HashKey和HashData分別代成BddHashKey和BddNodeInt*的時候,就發生錯誤了 搞不懂...這到底是為什麼呢?請大家幫忙一下... >"< 錯誤訊息: 「->」 的基運算元具有非指標類型:「Hash<BddHashKey, BddNodeInt*>::iterator」 好像是在說因為it不是指標所以不work?? 另外還有一個錯誤是說在 BddNodeInt* BddNode::getBddNodeInt() const 裡面, UINT_MAX尚未宣告,code裡面有用到這個嗎?? 我找不到說...orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.216.45
ric2k1:錯誤的訊息呢? 01/15 20:11
※ 編輯: INsoarDEEP 來自: 140.112.216.45 (01/15 20:52)
herbert570:因為沒有 overload 「->」 這個 operator,所以請愛用* 01/15 20:58
herbert570:dereference. UINT_MAX 要 #include <climits> 01/15 20:58
INsoarDEEP:喔喔!!可是為什麼testHash.cpp這樣用就可以work呢? 01/15 21:05
herbert570:testHash.cpp 沒有用 -> 喔! 01/15 21:47