কম্পিউটার টিউটোরিয়াল

C++ স্ট্রিং ক্লাস এবং এর অ্যাপ্লিকেশন (String Class and Applications)


C++-এ স্ট্রিং ক্লাস আছে। এটি প্রাচীন C স্ট্রিং থেকে ভিন্ন। C স্ট্রিং আসলে ক্যারেক্টার অ্যারে। C++-এ, স্ট্রিং ক্লাসের কিছু আলাদা প্রোপার্টি আছে। এর বিভিন্ন ফাংশন আছে, যেগুলো বিভিন্ন টাস্ক করতে ব্যবহার করা যায়। এখানে আমরা স্ট্রিং ক্লাসের গুরুত্বপূর্ণ ফিচারগুলো দেখব।

প্রথম অংশে আমরা দেখব স্ট্রিং ক্লাসের কনস্ট্রাক্টর কীভাবে ভিন্ন ভাবে কাজ করে। উদাহরণ দিয়ে দেখি।

উদাহরণ

#include<iostream>
using namespace std;
int main() {
    string str("This is a string");
    cout << "String is: " << str << endl;
    string str2(str); // অন্য স্ট্রিং str দিয়ে ইনিশিয়ালাইজেশন
    cout << "String is: " << str2 << endl;
    string str3(5, 'A'); // একটি ক্যারেক্টার দিয়ে ইনিশিয়ালাইজেশন
    cout << "String is: " << str3 << endl;
    string str4(str, 5, 10); // অন্য স্ট্রিং থেকে ইনডেক্স ৫ থেকে ১০ পর্যন্ত ইনিশিয়ালাইজেশন
    cout << "String is: " << str4 << endl;
    string str5(str.begin(), str.begin() + 7); // str থেকে প্রথম থেকে ইনডেক্স ৭ পর্যন্ত ইনিশিয়ালাইজেশন
    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

এখন স্ট্রিং ক্লাসের কিছু অপারেটর নিয়ে আলোচনা করি। বেসিক অপারেটরগুলো হলো অ্যাসাইনমেন্ট অপারেটর (=), ক্যাটেনেট অপারেটর (+), ইনডেক্স অপারেটর ([])। এদের উদাহরণ দেখি।

উদাহরণ

#include<iostream>
using namespace std;
int main() {
    string str = "Hello ";
    string str2 = "World";
    string str3, str4;
    str3 = str; // অ্যাসাইনমেন্ট অপারেটর ব্যবহার
    cout << "The value of str3: " << str3 << endl;
    str4 = str + str2; // দুটি স্ট্রিং ক্যাটেনেট
    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(); // স্ট্রিং ক্লিয়ার
    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 ফাংশন
    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

  1. C++-এ প্রাইভেট এবং প্রোটেক্টেড মেম্বার

  2. C++-এ ক্লাস এবং অবজেক্ট

  3. C++-এ ফ্রেন্ড ক্লাস এবং ফাংশন

  4. C#-এ Regex ক্লাস এবং এর মেথডগুলো