Помогите в написание программы ** С++;если можно с объявлениями; БЛАГОДАРЮ

0 голосов
24 просмотров

Помогите в написание программы на С++;если можно с объявлениями; БЛАГОДАРЮ


image
image

Информатика (26 баллов) | 24 просмотров
0

Это у вас в школе? Офигеть, уже проходите классы и перегрузки операторов. Влом писать тут код, ибо довольно много. Поищи в инете, там есть инфа на эти темы.

0

Вообще, наивно тут писать подобные вопросы, ибо это не школьная программа, вероятность того, что ответят, крайне мала.

Дан 1 ответ
0 голосов

#include

#include

#include

using namespace std;

class Rectangle

{

private:

int a = 0, b = 0;

string rectInSrt;

public:

Rectangle()  

{

 a = 0; b = 0;

}

int operator[] (int i)  

{  

 if (i == 0) return a;

 else if (i == 1) return b;

 else cout

 exit(1);

}

Rectangle& operator++ ()

{

 a += 1;

 b += 1;

 return *this;

}

Rectangle operator++ (int)

{

 Rectangle prev = *this;

 ++*this;

 return prev;

}

Rectangle& operator-- ()

{

 a -= 1;

 b -= 1;

 return *this;

}

Rectangle operator-- (int)

{

 Rectangle prev = *this;

 --*this;

 return prev;

}

operator bool() const

{

 return (a == b);

}

Rectangle operator*= (int c)

{

 a *= c;

 b *= c;

 return *this;

}

operator string() const

{

 stringstream ss;

 ss

 string rectInSrt = ss.str();

 return rectInSrt;

}

string operator=(string s)

{

stringstream ss;

ss

ss >> a >> b;

string rectInSrt = ss.str();

return rectInSrt;

}

};

int main()

{

Rectangle rect;

++rect;

rect *= 5;

cout

string s;

s = rect;

cout

s = "2 3";

rect = s;

cout

system("pause");

return 0;

}

Решил все же сделать, вспомнить, как это устроеноXD Не уверен, что все сделал как надо, но вроде работает. Ты хотя бы в коде разберись, перегрузка штука полезная.

(421 баллов)