다음을 통해 공유


basic_string::operator

문자열에서 지정 된 인덱스에 있는 문자에 대 한 참조를 제공합니다.

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

매개 변수

  • _Off
    인덱스 위치를 참조 하는 요소입니다.

반환 값

매개 변수 인덱스가 지정 된 위치에 문자열의 문자에 대 한 참조.

설명

문자열의 첫 번째 요소 인덱스 0에 있고 양수에서 연속적으로 인덱싱된 다음 요소 있도록 문자열의 길이 nnth 요소 인덱스 번호에서 n -1.

**operator[]**멤버 함수 보다 빠릅니다 읽기 및 쓰기 액세스 문자열의 요소를 제공 합니다.

**operator[]**여부를 매개 변수로 전달 된 인덱스는 유효 하지만 멤버 함수는 확인 하지 않습니다 하지 및 유효성에 사용 해야 하므로 특정 아닙니다.잘못 된 인덱스 (0 인덱스 보다 나 보다 크거나 문자열의 크기) 멤버 함수에 전달 된 throw는 out_of_range 클래스 예외.잘못 된 인덱스 전달 operator[] 결과에 정의 되지 않은 동작을 하지만 인덱스와 문자열의 길이에 상수 문자열에 대 한 올바른 인덱스 이며 연산자가이 인덱스 전달 될 때 null 문자를 반환 합니다.

참조 반환 문자열 재할당 또는 수정에는 비으로 무효화 될 수 있습니다-const 문자열입니다.

문자열의 경계 밖으로 요소를 액세스 하려고 하면 _SECURE_SCL 1을 사용 하 여 컴파일하면 런타임 오류가 발생 합니다.자세한 내용은 확인 된 반복기를 참조하십시오.

예제

// 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