//НУЖНО ПРОВЕРИТЬ ВЫВОД + УКАЗАТЕЛИ
#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.