С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 08.10.2018
Сообщений: 38
1

Перегрузка операторов для класса "Цилиндр"

18.04.2019, 20:33. Показов 874. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Мне нужно перегрузить вот эти операторы: =, +=, -=, >=, <=. Реализацию их для кода всеровно какую. Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <iostream>
 
class CCylinder
{
private:
    int m_nRadius;
    int m_nheight;
public:
    CCylinder(int a ,int b );
  
    
    int GetRadius();
    int GetHeigh();
    void  SetRadius(int);
    void  SetHeight(int);
    double Area();
    double Volume();
    const double pi = 3.14;
};
 
CCylinder::CCylinder(int a, int b )
{
    m_nRadius = a;
    m_nheight = b;
}
 
 
int CCylinder::GetHeigh()
{
    return m_nheight;
}
int CCylinder::GetRadius()
{
    return m_nRadius;
}
void CCylinder::SetHeight(int b)
{
    m_nheight= b;
}
void CCylinder::SetRadius(int a)
{
    m_nRadius= a;
}
double CCylinder::Area()
{
    return 2*pi*m_nRadius*(m_nRadius+m_nheight)  ;
}
double CCylinder::Volume()
{
    return pi*m_nRadius*m_nRadius*m_nheight ;
}
 
using namespace std;
 
int main() {
    CCylinder rec(9,9);
    cout << "rec2" << endl;
    cout << "Radius = " << rec.GetRadius() << endl;
    cout << "Heigh = " << rec.GetHeigh() << endl;
    cout << "area = " << rec.Area() << endl;
    cout << "Volume = " << rec.Volume() << endl;
    CCylinder rec2(10, 10);
    cout << "rec2" << endl;
    cout << "Radius = " << rec2.GetRadius() << endl;
    cout << "Heigh = " << rec2.GetHeigh() << endl;
    cout << "area = " << rec2.Area() << endl;
    cout << "Volume = " << rec2.Volume() << endl;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.04.2019, 20:33
Ответы с готовыми решениями:

Перегрузка операторов для класса
class A { private: size_t i; public: size_t i_get() { return i; } };

Перегрузка операторов для класса Array
Здравствуйте, у меня есть созданный класс array, для него нужно перегрузить операторы &lt;&lt;. &gt;&gt;, =,...

Перегрузка операторов для класса треугольника
Дан класс Треугольник, включающий в себя закрытые поля для сторон и медиан. Указать все необходимые...

Перегрузка операторов для класса polynom
Создаю класс полиномов (polynom), в нём надо перегрузить ряд операторов. Где-то нашёл пример, где...

3
6340 / 3511 / 1427
Регистрация: 07.02.2019
Сообщений: 8,977
19.04.2019, 00:04 2
Цитата Сообщение от paulHazker Посмотреть сообщение
Реализацию их для кода всеровно какую.
Да не вопрос:
C++
1
2
3
4
5
    CCylinder& operator=(const CCylinder& other) = default;
    CCylinder& operator+=(const CCylinder& other) { return *this; }
    CCylinder& operator-=(const CCylinder& other) { return *this; }
    bool operator<=(const CCylinder& other) const { return (bool)(std::cout << "whatever\n"); }
    bool operator>=(const CCylinder& other) const { !(*this <= other); }
1
330 / 145 / 56
Регистрация: 17.10.2015
Сообщений: 580
19.04.2019, 13:03 3
Цитата Сообщение от zayats80888 Посмотреть сообщение
C++
1
bool operator<=(const CCylinder& other) const { return (bool)(std::cout << "whatever\n"); }
0
2 / 2 / 1
Регистрация: 23.10.2019
Сообщений: 62
21.12.2019, 01:04 4
paulHazker, ты можешь скинуть еще раз типа готовый код
0
21.12.2019, 01:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.12.2019, 01:04
Помогаю со студенческими работами здесь

Перегрузка операторов для класса МАССИВ
Привет. Есть класс &quot;вектор&quot; (&quot;массив&quot;), нужно переопределить операторы =, +, - , *, +=, -=, *= с...

Перегрузка операторов << и == для шаблонного класса
Имеется шаблон класса односвязного списка template&lt;class data&gt;/*Шаблон класса &quot;Узел односвязного...

Перегрузка операторов для класса не работают
Условие задачи:Номиналы российских рублей могут принимать значения 1, 2, 5, 10, 50, 100, 500, 1000,...

Перегрузка операторов для класса Треугольник
Задание: Перегрузить операторы &gt;, &lt;, == для класса Треугольник относительно сравнения площадей...

Перегрузка операторов для класса матриц
Собственно, суть проблемы. Пишу класс матриц (хочется), оператор присваивания работает только...

Перегрузка математических операторов для класса Время
Задали перегрузить сложение, вычитание, умножение и деление. Помогите пожалуйста

Перегрузка операторов сравнения для класса Rational
Прохожу курс вот условие Еще одна важная группа операторов, которые полезно реализовать для класса...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru