C++에는 String 클래스가 있습니다. 이는 기존의 C 문자열과 다릅니다. C 문자열은 실제로 문자 배열입니다. C++에서 문자열 클래스에는 몇 가지 다른 속성이 있습니다. 다른 작업을 수행하는 데 사용할 수 있는 다양한 기능이 있습니다. 여기에서 String 클래스의 중요한 기능을 볼 수 있습니다.
첫 번째 섹션에서는 문자열 클래스의 생성자가 다른 방식으로 작동하는 방식을 볼 것입니다. 예를 들어 살펴보겠습니다.
예시
#include<iostream> using namespace std; int main() { string str("This is a string"); cout << "String is: " << str << endl; string str2(str); // initialization by another string str cout << "String is: " << str2 << endl; string str3(5, 'A'); //initialize by a character cout << "String is: "<< str3 << endl; string str4(str, 5, 10); //initialize using another string from index 5 to index 10 cout << "String is: " << str4 << endl; string str5(str.begin(), str.begin() + 7); //initialize using str from first to index 7 cout << "String is: " << str5 << endl; }
출력
String is: This is a string String is: This is a string String is: AAAAA String is: is a strin String is: This is
이제 String 클래스의 몇 가지 연산자에 대해 논의해 보겠습니다. 기본 연산자는 대입 연산자(=), 연결 연산자(+), 인덱스 연산자([ ])입니다. 이러한 연산자의 예를 살펴보겠습니다.
예시
#include<iostream> using namespace std; int main() { string str = "Hello "; string str2 = "World"; string str3, str4; str3 = str; //use assignment operator cout << "The value of str3: " << str3 << endl; str4 = str + str2; //concatenate two strings cout << "The value of str4: " << str4 << endl; cout << "Character at position 1 of str: " << str[1] << endl; }
출력
The value of str3: Hello The value of str4: Hello World Character at position 1 of str: e
마지막으로 몇 가지 문자열 함수를 확인하도록 설정합니다. 이러한 함수는 문자열과 관련된 몇 가지 중요한 작업을 수행하는 데 사용됩니다. 예제 코드에서 작동하는 기능을 살펴보겠습니다.
예시
#include<iostream> using namespace std; int main() { string str = "Hello"; cout << "String before clear: " << str << endl; str.clear(); //clean the string cout << "String after clear: " << str << endl; str = "This is a string:"; cout << "String length using length() and size() functions: " <<str.length() << " and " << str.size() << endl; cout << "Character at position 1 of str: " << str.at(1) << endl; cout << "First character of str: " << str.front() << endl; cout << "Last character of str: " << str.back() << endl; cout << "String to C like character array: " << str.c_str() << endl; cout << "String after appending text : " << str.append("ABCDEF") << endl; string str2 = "ANOTHER STRING"; cout << "String after appending text from str2 : " << str.append(str2,0, 5) << endl; //find function to find substring if (str.find("is") != string::npos) cout << "\"is\" is found in str at " << str.find("is") << " pos" <<endl; else cout << "substring not found in str" << endl; cout << "Substring of length 3 from index 5: " <<str.substr(5, 3) <<endl; cout << "String after erasing 4 characters from index 5: " <<str.erase(5, 4) << endl; cout << "Replace 7 characters from index 3: " <<str.replace(3, 7, "C++Programming"); }
출력
String before clear: Hello String after clear: String length using length() and size() functions: 17 and 17 Character at position 1 of str: h First character of str: T Last character of str: : String to C like character array: This is a string: String after appending text : This is a string:ABCDEF String after appending text from str2 : This is a string:ABCDEFANOTH "is" is found in str at 2 pos Substring of length 3 from index 5: is String after erasing 4 characters from index 5: This string:ABCDEFANOTH Replace 7 characters from index 3: ThiC++ Programmingng:ABCDEFANOTH