-2

まず、私はC++の初心者です。この質問がばかげているように聞こえる場合は、すみません。

VS コンパイラに示されているように、unsigned_int から size_t への変換に問題があります。以下は、コンパイラがエラーを出す原因となるコード行です。

size_t findNextAlphaNumericPosition(string &str)
{
    for (size_t i = 0; i < str.length; i++)
    {
        if (isalpha(str[i])) return i;
    }

    return -1;
}

この行に実行すると文句を言います:

for (size_t i = 0; i < str.length; i++)

どんな考えでも大歓迎です。VS のコンパイルを停止します。

4

1 に答える 1

8

lengthメンバーstd::stringfunctionであるため、次のように呼び出す必要があります。

for (size_t i = 0; i < str.length(); i++)
//            Note function call ^^
于 2013-09-10T08:49:00.800 に答える