Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.62
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
#1

Создать класс Int - C++

11.02.2010, 19:14. Просмотров 2075. Ответов 6
Метки нет (Все метки)

Создайте класс Int, имитирующий стандартный тип int. Единственное
поле этого класса должно иметь тип int. Создайте методы, которые будут
устанавливать значение поля, равным нулю, инициализировать его целым
значением, выводить значение поля на экран и складывать два значения
типа Int.
Напишите программу, в которой будут созданы три объекта класса Int,
два из которых будут инициализированы. Сложите два инициализирован-
ных объекта, присвойте результат третьему, а затем отобразите результат
на экране.

Вот попробывал я сделать программу,не понимаю компилирует правильно,но не выводит результат сложения:

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
#include <iostream>
using namespace std;
class Int
{
      private:
              int intez;
      public:
             Int():intez(0){}
             Int(int intz):intez(intz){}
      void getdist()
      {
           cout<<"Enter number=";
           cin>>intez;
      }
      int display()
      {
           cout<<"POLE="<<intez;
      }
      void addengl(Int,Int);
};
       void Int::addengl(Int d2,Int d3)
      {
      
        intez=d2.intez+d3.intez;
      }
      int main()
      {
          Int d1,d2,d3;
          d2.getdist();
          d1.getdist();
          d3.addengl(d2,d3);
          cout<<d3.display();
          getchar();
          
       }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2010, 19:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создать класс Int (C++):

Создать класс вектор Vector (int *). Перегрузить операции: - C++
Создать класс вектор Vector (int *). Перегрузить операции: 1) ++ как унарный метод класса, возводящий элементы вектора в квадрат; 2) ...

Создать класс Matrix, реализующий двухмерный динамический массив типа int - C++
Здравствуйте! Задание: Создать класс Matrix, реализующий двухмерный динамический массив типа int. Конструктор должен заполнять массив...

Класс Int имитирующий встроенный тип int - C++
Создать класс Int (с заглавной буквы) имитирующий встроенный тип int и позволяющий следующие конструкции: Int i = 0; i = i+1; i++; ...

Создать класс Man (человек), с полями: имя, возраст, пол и вес. Создать производный класс Student ... - C++
Создать класс Man (человек), с полями: имя, возраст, пол и вес. Определить методы задания имени, возраста и веса. Создать производный класс...

Создать абстрактный базовый класс Тройка чисел с виртуальными методами увеличения на 1. Создать производный класс Время со своими функциями - C++
Здравствуйте, пожалуйста помогите написать код к данной задаче, с таким условием: Создать абстрактный базовый класс Тройка чисел с...

Создать класс - данные - абстрактный базовый класс. Создать производные классы - C++
Всем привет! У меня вот такая проблема.... Создать класс - данные - абстрактный базовый класс. Создать производные классы - данные типа...

6
@KOT@
81 / 39 / 2
Регистрация: 29.01.2010
Сообщений: 386
11.02.2010, 19:22 #2
Цитата Сообщение от Tiami Посмотреть сообщение
d3.addengl(d2,d3);
Почему ты складываешь д2 и д3, когда по идее должен складывать д1 и д2??
1
Зоти Сергей
228 / 226 / 13
Регистрация: 18.12.2009
Сообщений: 316
11.02.2010, 19:23 #3
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
#include <iostream>
using namespace std;
class Int
{
      private:
              int intez;
      public:
             Int():intez(0){}
             Int(int intz):intez(intz){}
      void getdist()
      {
           cout<<"Enter number=";
           cin>>intez;
      }
      int display()
      {
           cout<<"POLE="<<intez;
 
      }
      void addengl(Int,Int);
};
       void Int::addengl(Int d2,Int d3)
      {
        Int d1;
        intez=d2.intez+d3.intez;
      }
 
 
int main(int argc, char* argv[])
{
    Int d1,d2,d3;
          d2.getdist();
          d1.getdist();
          d3.addengl(d2,d1);
          d3.display();
          getchar();
 
    return 0;
}
1
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
11.02.2010, 19:24  [ТС] #4
Цитата Сообщение от @KOT@ Посмотреть сообщение
Почему ты складываешь д2 и д3, когда по идее должен складывать д1 и д2??
изменил все равно результат не отображается )))

Добавлено через 38 секунд
А без указателей можноа то я не дошел
0
Зоти Сергей
228 / 226 / 13
Регистрация: 18.12.2009
Сообщений: 316
11.02.2010, 19:25 #5
Дело еще и в том, что Вы вызываете
cout<<d3.display();
при этом
display() у вас ничего не возвращает.
По этому либо возвращайте значение, какое то, либо
пишите просто
d3.display();
1
Tiami
Яростный кот
-4 / 1 / 1
Регистрация: 10.03.2009
Сообщений: 220
11.02.2010, 19:27  [ТС] #6
Все проблема решена))
0
Genius Ignat
1236 / 774 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
11.02.2010, 21:13 #7
Без перегрузки операций: подобные классы на мой взгляд не интересны.
0
11.02.2010, 21:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2010, 21:13
Привет! Вот еще темы с ответами:

Error LNK2019: unresolved external symbol "public: __thiscall Vector<int>::Vector<int>(int,int,int)" (?0?$Vec - C++
Вот есть заголовочный файл // Заголовочный файл Vector.h #ifndef VECTOR_H #define VECTOR_H #include &lt;iostream&gt; using...

Класс, сложение 2х int - C++
Доброе время суток, подскажите как реализовать класс что бы он мог сложить 2е переменные , для сложения переменой и числа все работает ...

Ошибка при компиляции error: cannot convert ‘int (*)[5]’ to ‘int**’ for argument ‘1’ to ‘void Replase(int**)' - C++
#include &lt;iostream&gt; #include &lt;ctime&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; #define row 5 #define col 5 using namespace...

В каком случае надо начинать с int main() или с int _tmain( int argc, _TCHAR* argv[] ) и т.д.? - C++
Не понимаю, с чего начинать. Заранее спс.


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru