Программа на C ++ для объединения двух строк с использованием перегрузки оператора

Опубликовано: 3 Декабря, 2021

Предварительное условие: перегрузка оператора в C ++
Даны две строки. Задача состоит в том, чтобы объединить две строки с помощью перегрузки оператора в C ++.

Пример:

 Ввод: str1 = "hello", str2 = "world"
Выход: helloworld

Ввод: str1 = "Компьютерщики", str2 = "Мир"
Выход: GeeksWorld
Рекомендуется: сначала попробуйте свой подход в {IDE}, прежде чем переходить к решению.

Подход 1. Использование перегрузки унарного оператора.

  • Для объединения двух строк с помощью перегрузки унарного оператора. Объявите класс с двумя строковыми переменными.
  • Создайте экземпляр класса и вызовите параметризованный конструктор класса, чтобы инициализировать эти две строковые переменные входными строками из основной функции.
  • Перегрузить унарный оператор для объединения этих двух строковых переменных для экземпляра класса.
  • Наконец, вызовите операторную функцию и объедините две переменные класса.

Ниже представлена реализация описанного выше подхода:

C ++

// C++ Program to concatenate two string
// using unary operator overloading
#include <iostream>
#include <string.h>
using namespace std;
// Class to implement operator overloading
// function for concatenating the strings
class AddString {
public :
// Classes object of string
char s1[25], s2[25];
// Parameterized Constructor
AddString( char str1[], char str2[])
{
// Initialize the string to class object
strcpy ( this ->s1, str1);
strcpy ( this ->s2, str2);
}
// Overload Operator+ to concat the string
void operator+()
{
cout << " Concatenation: " << strcat (s1, s2);
}
};
// Driver Code
int main()
{
// Declaring two strings
char str1[] = "Geeks" ;
char str2[] = "ForGeeks" ;
// Declaring and initializing the class
// with above two strings
AddString a1(str1, str2);
// Call operator function
+a1;
return 0;
}
Выход:

Concatenation: GeeksForGeeks