task1 (4 half ready)

//НУЖНО ПРОВЕРИТЬ ВЫВОД + УКАЗАТЕЛИ #include "stdafx.h" #include "cstring" #include <iostream> #include "stdio.h" #include "string.h" using namespace std; class Stroki { private: char init; public: Stroki() { cout << "конструктор по умолчанию\n"; } Stroki(char s) { cout << "конструктор с параметром char *\n"; } Stroki(const Stroki &object) { init = object.init; cout << "констурктор копирования\n"; } ~Stroki() { cout << "деструктор\n"; } Stroki& operator= (const Stroki& object) { init = object.init; cout << "оператор присваивания\n"; return *this; } Stroki& operator= (const char* s) { cout << "оператор приведения к const char*\n"; } Stroki& operator+ (const Stroki &concat) {//оператор конкатенации с аргументом типа Stroki Stroki res = init + concat.init; return res; cout << "оператор конкатенации\n"; } Stroki& operator+= (const Stroki &concat) {//оператор конкатенации с аргументом типа Stroki и изменением init init += concat.init; return *this; } }; void main() { char *p, s1, s2; //указатель на строку и сама строка s1 = 'h'; s2 = 'g'; p = &s1; setlocale(LC_ALL, "rus"); //поддержка русского языка Stroki str1; //создаем объект класса str1 Stroki str1(s1); //конструктор с параметром Stroki str2 = s2; //конструктор копирования str1 = str2; //оператор присваивания str1 = s1; Stroki concat_res; concat_res = str1 + str2; str1 += str1; system("pause"); }

Be the first to comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.