我有一個簡單的函數,它檢查給定的字符串是否匹配某個條件,然後根據收到的2個字符串生成第三個字符串作爲參數。第三個字符串很好,但當我返回時,它突然變成「\n
」。退出循環時字符串更改的內容
string sReturn = "";
if (sText.size() != sPassword.size()) {
//Checks to see if the texts match a condition
return sReturn;
}
for (int foo = 0; foo < sText.size(); foo++) {
sReturn = "";
sReturn += (char)sText[foo]^(char)sPassword[foo];
}
return sReturn;
在爲sReturn
優良並具有正確的內容,但只要它存在循環,調試器突然告訴我,它的內容是「\n
」。我究竟做錯了什麼 ?
僅供參考:只有通過for循環的最後一次迭代實際上會產生任何效果,因爲每次循環體開始時都會清空sReturn。 – 2010-08-20 15:48:36
您應該作出答覆James – mnuzzo 2010-08-20 15:49:54
顯示函數定義及其使用位置。 – 2010-08-20 15:50:13