看板 C_and_CPP 關於我們 聯絡資訊
※ 引述《david50407 (David07)》之銘言: : 開發平台(Platform): C++ : 額外使用到的函數庫(Library Used): null : 問題(Question):遇到<unresolved overloaded function type> : 餵入的資料(Input):null : 預期的正確結果(Expected Output):compile 成功 : 錯誤結果(Wrong Output): : Sources/CUserData.cpp: In constructor ‘UnknowBBS::UserData::UserData()’: : Sources/CUserData.cpp:11: error: no matching function for call to ‘ : UnknowBBS::StringComparer<void (*)(FILE*, int)>::add(const char [3], : <unresolved overloaded function type>)’ : ./Sources/./Tools/StringComparer.h:23: note: candidates are: : UnknowBBS::StringComparer<R> UnknowBBS::StringComparer<R>::add(char*, R) : [with R = void (*)(FILE*, int)] : 程式碼(Code): : typedef void (*UDdelegate)(FILE *, int); : StringComparer<UDdelegate> sc; : sc.add("id", UserData::read_id); : void UserData::read_id(FILE *f, int length) {} : template <typename R> : StringComparer StringComparer::add(string key, R val) : { : keys.push_back(key); : vals.push_back(val); : return this; : } : /* : std::vector<string> keys; : std::vector<R> vals; : */ : 補充說明(Supplement): : 額... 編譯錯誤 : 我丟的是函數指標 : 但是給了我一個 : <unresolved overloaded function type> 你 error msg 要看完啊~~ 這邊 ./Sources/./Tools/StringComparer.h:23: note: candidates are: UnknowBBS::StringComparer<R> UnknowBBS::StringComparer<R>::add(char*, R) [with R = void (*)(FILE*, int)] 他提醒(建議)你要把 StringComparer StringComparer::add(string key, R val) 改成 StringComparer<R> StringComparer<R>::add(string key, R val) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.242.246.249
david50407:其實不影響....我家了之後還是一樣的error = =| 07/19 12:31
CindyLinz:嗯, 我看錯了, 應該是要改你呼叫的地方 07/19 12:40
CindyLinz:不過你那邊好像沒有貼上來 07/19 12:40
david50407:sc.add("id", UserData::read_id); 07/19 13:23
CindyLinz:sc.add<UDdelegate>("id", UserData::read_id) 07/19 13:31
CindyLinz:不過.. UserData 又是什麼東東.. 07/19 13:31
david50407:很簡單的class... 07/19 14:06
david50407:裏面只有read_id函數 跟int id; 07/19 15:28
※ 編輯: CindyLinz 來自: 210.242.246.249 (09/10 13:19)