string::find_first_of()の使い方が変でしょうか?

[戻る]
修行僧 2008/10/11(土) 04:00:48
よろしくです
文字列から、特定文字の出現位置を検索するため、下記の通り書いたのですが
元の、文字列に含まれない文字までが、string::nops以外の値を返してきます
string::find_first_of()関数の使い方がおかしいのでしょうか、ご教示願います。

#include <string>

using namespace std;

int main()
{
    string::size_type lppos, rppos, cpos, pppos, spos, utpos, ltpos;
    string plkey = "("; string prkey = ")"; string ckey = "○"; string pkey =
"・"; string skey = "■"; string utkey = "▲"; string ltkey = "▼";
    string line = "○大域:整数型:Next[26]";
    lppos = rppos = cpos = pppos = spos = utpos = ltpos = -1;
    lppos = line.string::find_first_of(plkey);  // "("のポジション
    rppos = line.string::find_first_of(prkey);  // ")"のポジション
    cpos  = line.string::find_first_of(ckey);   // "○"のポジション
    pppos = line.string::find_first_of(pkey);   // "・"のポジション(戻り値0)
    spos  = line.string::find_first_of(skey);   // "■"のポジション(戻り値0)
    utpos = line.string::find_first_of(utkey);  // "▲"のポジション(戻り値0)  
ltpos = line.string::find_first_of(ltkey);  // "▼"のポジション(戻り値0)

    return 0;
}
環境:VC8

επιστημη [HomePage] 2008/10/11(土) 08:13:47
間違っています。マニュアルを読んでください。

修行僧 2008/10/11(土) 14:34:59
[[解決]]
επιστημηさんありがとうございました、勘違いをしてました。

古いスレッドには追加発言できません。