basic_string::operator
문자열에서 지정 된 인덱스에 있는 문자에 대 한 참조를 제공합니다.
const_reference operator[](
size_type _Off
) const;
reference operator[](
size_type _Off
);
매개 변수
- _Off
인덱스 위치를 참조 하는 요소입니다.
반환 값
매개 변수 인덱스가 지정 된 위치에 문자열의 문자에 대 한 참조.
설명
문자열의 첫 번째 요소 인덱스 0에 있고 양수에서 연속적으로 인덱싱된 다음 요소 있도록 문자열의 길이 n 가 nth 요소 인덱스 번호에서 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