রিলেশনাল অপারেটর == এবং std::string::compare() এর মধ্যে শুধু একটি পার্থক্য রয়েছে। সেটি হলো রিটার্ন ভ্যালু। ইন্টারন্যালি, string::operator==() string::compare() ব্যবহার করে।
রিলেশনাল অপারেটর (==) একটি বুলিয়ান রিটার্ন করে যা শুধু দুটি স্ট্রিং সমান কিনা তা বোঝায়, যখন compare() একটি ইন্টিজার রিটার্ন করে যা বোঝায় দুটি স্ট্রিং একে অপরের সাথে কীভাবে রিলেটেড।
ব্যবহারের ক্ষেত্রে আলোচনা করলে, compare() তখন উপকারী হতে পারে যখন আপনি দুটি স্ট্রিং একে অপরের সাথে কীভাবে রিলেটেড (লেস বা গ্রেটার) সেটি জানতে চান যখন সেগুলো ভিন্ন হয়। উদাহরণস্বরূপ,
উদাহরণ
#include <iostream>
using namespace std;
int main() {
string s1 = "Tutorials Point";
string s2 = "Hello World";
cout << (s1 == s2);
cout << s1.compare(s2);
cout << s2.compare(s1);
return 0;
}
আউটপুট
এটি নিচের আউটপুট দেবে:
0 1 -1