我想通過AnsiString(someStr).c_str()
到boost::split()
第二個參數,但它否認顯示參數不匹配!boost :: split argument mismatch
這裏是代碼片段
vector<std::string> sVec;
boost::split(sVec,AnsiString(response).c_str(),boost::is_any_of(" "));//err in this line
ShowMessage(sVec[1].c_str());
然而
升壓::分裂(SVEC, 「這是一個測試」,助推:: is_any_of(」「));
效果很好!
我是否正確地將AnsiString轉換爲C字符串類型?
不幸的是既不可行!不匹配! '[BCC32錯誤] Unit1.cpp(25):E2285找不到匹配'boost :: algorithm :: split <>(vector>,const char *,boost :: algorithm :: detail: :is_any_ofF )' 完整的解析器上下文 Unit1.cpp(22):parsing:void _fastcall TForm1 :: Button1Click(TObject *)' –
2011-12-22 11:26:14
模板分辨率顯然不考慮隱式構造函數。當你說'既沒有作用',你的意思是即使是一個明確的構造函數調用導致相同的錯誤?這很奇怪,因爲在這種情況下不存在歧義。 – 2011-12-22 11:30:52
是的,當然!弗雷德裏克!都給錯誤! – 2011-12-22 11:33:43