Translations of this page?:

at

Syntax:

    #include <string>
    charT& at( size_type loc );
    const charT& at( size_type loc ) const;

at()関数は、文字列の”loc”位置の文字を返します。 at()関数は、[]演算子よりも安全です。 それは、文字列の最後を越える参照ができないためです。

例えば、次のコードを検討してみてください。

   string s("abcdef");
   for( int i = 0; i < 10; i++ ) {
     cout << "Element " << i << " is " << s[i] << endl;
   }

このコードは、文字列の最後を越えて実行されています。これは、潜在的に危険な結果を生んでいます。 コードをより安全に書くには、

   string s("abcdef");
   for( int i = 0; i < 10; i++ ) {
     cout << "Element " << i << " is " << s.at(i) << endl;
   }

メモリから不正確なデータを拾う代わりに、at()関数は、文字列を超えて実行されるのが明らかな場合は、例外をスローします。

Related Topics: [] operator

 
• • • SitemapRecent changesRSScc