2
以前,我使用append函數來連接字符串。但是,因爲這樣做需要多行不必要的代碼,所以我想試試'+'運算符。不幸的是,它並不順利......C++中的字符串連接
bool Grid::is_available(int x, int y) const
{
if (x < 0 || x >= dim[1] || y < 0 || y >= dim[0])
throw std::invalid_argument("is_available(" + x + ", " + y + "): Invalid coordinate input.");
return occupancy[x][y] == AVAILABLE;
}
,我得到的是錯誤:與代碼C2110「‘+’不能添加兩個指針」。 這個問題的所有解決方案都表示在每一行上連接一個。 實際上沒有辦法在一行中連接C++中的多個字符串嗎?在C#之前,我對此沒有任何問題。
你連接兩個字符串文字。 +運算符將工作在兩個'std :: string's或一個'std :: string'和一個'char *'。 – Steve
此外,您正在將字符串文字添加到整數,這將無法正常工作。 – Steve
This works:'auto foo = std :: string {「Hello」} +「world!」;' – Steve