0
我正在寫一段代碼,應該運行在多個平臺上。我在使用Visual Studio 2013進行編譯時沒有任何問題就可以使用代碼,但現在我嘗試爲Android編譯它,但是在標題中提到了錯誤。錯誤:沒有匹配函數調用呼叫 - 與VS2013編譯雖然
我試圖編譯代碼是這樣的:
#pragma once
#include <string>
class StringUtils
{
public:
static std::string readFile(const std::string& filename);
static std::string& trimStart(std::string& s);
static std::string& trimEnd(std::string& s);
static std::string& trim(std::string& s);
};
上述方法在錯誤中提到。舉個例子,我嘗試調用trim()
方法是這樣的:
std::string TRData::readValue(std::ifstream& ifs)
{
std::string line;
std::getline(ifs, line);
int colon = line.find_first_of(':');
assert(colon != std::string::npos);
return StringUtils::trim(line.substr(colon + 1));
}
錯誤信息指向該方法的最後一行。我該如何解決這個問題?正如我所說的,它使用VS2013進行編譯,但不適用於使用默認NDK工具鏈的Android。
編輯:忘了粘貼確切的錯誤信息,那就是:
error : no matching function for call to 'StringUtils::trim(std::basic_string<char>)'