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

Перегрузить операторы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Подсчет и перехват нажатий клавиш http://www.cyberforum.ru/cpp-beginners/thread109909.html
Всем привет! Вот недавно попытался создать счетчика нажатий кнопок, но он очень нестабилен. Создал я его так: 1) создал winforms в vc++ 2)подключил и объявил #pragma comment(lib,"User32.lib")...
C++ Перегрузка операторов умножения и присваивания для строк. Помогите, пожалуйста, реализовать перегрузку операторов умножения и присваивания для такого задания со строками: "Описать класс, 3 объекта используя разные конструкторы; увеличить в 2 раза объект #3... http://www.cyberforum.ru/cpp-beginners/thread109900.html
Подсчитать колличество слов начинающихся с первой буквы первого слова C++
Дана строка ,которая водится с клавиатуры. Подсчитать колличество слов начинающихся с первой буквы первого слова #include "stdafx.h" #include "conio.h" //для функции getch() #include "cmath"...
C++ unit-тестирование функции
Заполнить массив n´m нулями и единицами «цепочкой квадратов». Размер квадрата задается. Тест: K = 4 1 1 1 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1...
C++ Задать массив вещественных чисел и вставить в исходный массив число http://www.cyberforum.ru/cpp-beginners/thread109882.html
вот такая программка Задать массив вещественных чисел с помощью датчика случайных чисел. Вставить в исходный массив число. С клавиатуры ввести само число и номер элемента, после которого...
C++ [C++] Купюры Вариант 13. 1.Покупатель должен заплатить в кассу S р.У него имеются 1, 5, ,10, 50, 100, 500, 1000 и 10000р.Сколько купюр разного достоинства отдаст покупатель, если он начинает платить с самых... подробнее

Показать сообщение отдельно
~(:{)Yura
0 / 0 / 0
Регистрация: 28.02.2010
Сообщений: 10

Перегрузить операторы - C++

28.03.2010, 21:45. Просмотров 468. Ответов 1
Метки (Все метки)

Перегрузить операторы. Использовать спроектированые классы структур данных в соответствии с вариантом и спроектированые объекты этих классов в лабораторной работе 2. . Операции: = (присваивание)
== (Проверка на равенство массивов оценок).

у меня получилось пока только это:
Оригинал
Перевантажити оператори. Використати спроектовані класи структур даних згідно з варіантом та спроектовані об’єкти цих класів у лабораторній роботі 2. . Операції: = (присвоювання)
== (перевірка на рівність масивів оцінок).


в мене вийшло поки що тільки це:


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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
#include <conio.h>
#include <iostream>
using namespace std; 
 
class student
{
   private:
   char *name;
   char *VNZ;          
   int age;       
 
   public:
   student()           
   {
      name = new char[7];       
      strcpy(name, "Yura");
      VNZ = new char[7];       
      strcpy(VNZ, "KPI");  
      age = 17;
      
   }
 
   student(char *nm, char *VZ, int ag) 
   {
      name = new char[strlen(nm)+1];
      strncpy(name, nm, 7);
      VNZ = new char[strlen(VZ)+1];
      strncpy(VNZ, VZ, 7);
      age = ag;
      
   }
   student(student &Other)
   {
        name = new char[7];       
        strcpy(name, Other.name);
        VNZ = new char[7];       
        strcpy(VNZ, Other.VNZ);
        age=Other.age;
   }
 
   ~student()                            
   {
      delete [] name, VNZ;                    
   }
 
   void print()       
   {
      cout << "Name: " << name << endl;
      cout << "VNZ: " << VNZ << endl;
      cout << "age  : " << age << endl;
   }
};
 
 
 
class student_1 : public student
{
   private:
   int *vid;             
 
   public:
   student_1() : student()     
   {
      vid = new int[10]; 
      vid[0]=10;
      for(int i=1; i<=10; i++)
          vid[i]=3;
   };
 
   
   student_1(char* nm, int ag,char* VZ,int count, int* vd) : student(nm, VZ, ag)
   {
      vid = new int[count];vid[0]=count;
      for(int i=1; i<=count; i++)
          vid[i]=vd[i-1];
   }
 
   student_1(student_1 &Other) : student(Other)
   {
       vid = new int[Other.vid[0]];
       for(int i=0; i<=Other.vid[0]; i++)
       vid[i]=Other.vid[i];
   }
   ~student_1()           
   {
      delete [] vid;
      student::~student();
   }
 
   void print()     
   {
       student::print();
      cout << "Marks: ";
      for(int i=1; i<=vid[0]; i++)
          cout<<vid[i]<<((i<vid[0])?", ":""); 
      cout<<endl;
   }
 
};
 
int main()
{
   int ag;
   char *nm=new char[7], *VZ=new char[7];
   int count;
 
   cout << "BBeguTe uM9 :";
   cin >> nm;
   cout << "BBeguTe Bik :";
   cin >> ag;
cout << "BBeguTe BH3 :";
   cin >> VZ;
   cout << "BBeguTe k-st' ozinok :";
   cin >> count;
   int* vd=new int[count];
   cout << "BBeguTe ozinku :";
   for(int i=0; i<count; i++)
    cin>>vd[i]; 
 
   student_1 a;            
   student_1 b(nm,ag,VZ,count,vd);
   student_1 c(b);
 
   a.print();cout<<endl;
   b.print();cout<<endl; 
   c.print();cout<<endl;
 delete [] nm, VZ, vd;
  
        getch();
        return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru