共用方式為


basic_string::operator[]

提供在字元的參考具有指定索引的字串。

const_reference operator[](
   size_type _Off
) const;
reference operator[](
   size_type _Off
);

參數

  • _Off
    項目之位置的索引所參考的。

傳回值

字串中的字元的參考參數索引所指定的位置。

備註

字串的第一個項目的索引,如果為零,而且正整數連續索引下列項目,因此,長度 n 字串具有數值索引的 第 n個項目 n - 1。

operator[] 要讀取的所提供的成員函式 快速且字串項目的寫入權限。

operator[] 不檢查當做參數傳遞的索引是否有效,但是,成員函式 at 進行,因此應該用於驗證不確定。 無效的索引 (索引為零或大於或等於字串的大小) 傳遞至成員函式 atout_of_range 類別 擲回例外狀況。 無效的索引傳遞至 operator[] 在未定義的行為的結果,不過,索引等於字串的長度是常數字串的有效索引,而運算子傳回 null 字元,您可以在這個索引。

傳回的參考可能會由字串轉散發或修改無效非const 字串的。

當以 _SECURE_SCL 1 編譯時,執行時會發生錯誤,如果您嘗試存取字串界限之外的項目。 如需詳細資訊,請參閱檢查過的 Iterator

範例

// basic_string_op_ref.cpp
// compile with: /EHsc
#include <string>
#include <iostream>

int main( )
{
   using namespace std;
   string str1 ( "Hello world" ), str2 ( "Goodbye world" );
   const string cstr1 ( "Hello there" ), cstr2 ( "Goodbye now" );
   cout << "The original string str1 is: " << str1 << endl;
   cout << "The original string str2 is: " << str2 << endl;

   // Element access to the non-const strings
   basic_string <char>::reference refStr1 = str1 [6];
   basic_string <char>::reference refStr2 = str2.at ( 3 );

   cout << "The character with an index of 6 in string str1 is: "
        << refStr1 << "." << endl;
   cout << "The character with an index of 3 in string str2 is: "
        << refStr2 << "." << endl;

   // Element access to the const strings
   basic_string <char>::const_reference crefStr1 = cstr1 [ cstr1.length ( ) ];
   basic_string <char>::const_reference crefStr2 = cstr2.at ( 8 );

   if ( crefStr1 == '\0' )
      cout << "The null character is returned as a valid reference."
           << endl;
   else
      cout << "The null character is not returned." << endl;
   cout << "The character with index of 8 in the const string cstr2 is: "
        << crefStr2 << "." << endl;
}

Output

The original string str1 is: Hello world
The original string str2 is: Goodbye world
The character with an index of 6 in string str1 is: w.
The character with an index of 3 in string str2 is: d.
The null character is returned as a valid reference.
The character with index of 8 in the const string cstr2 is: n.

需求

標題: <string>

命名空間: std

請參閱

參考

basic_string Class