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

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

Войти
Регистрация
Восстановить пароль
 
Metal_666_
15 / 15 / 2
Регистрация: 19.10.2009
Сообщений: 187
#1

Не могу въехать в перегрузку операций - C++

30.11.2009, 00:55. Просмотров 306. Ответов 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
#include <iostream.h>
#include <windows.h>
 
struct guitar
   {
 
      int string;
      char name[30];
      int hambacker;
      int singl;
 
   };
ostream operator<<(ostream& cout,const guitar& gu)
   {
      cout<<gu.string<<endl;
      cout<<gu.name<<endl;
      cout<<gu.hambacker<<endl;
      cout<<gu.singl<<endl;
      
   }
guitar ingu(guitar);
void outGu(guitar);
 
void inputGuit(guitar* gui)
   {
      for(int i=0;i<2;i++)
         ingu(gui[i]);
   }
 
 
guitar ingu(guitar g)
   {
      cout<<"String "<<endl;
      cin>>g.string;
      cout<<"Name "<<endl;
      cin>>g.name;
      cout<<"Hambacker "<<endl;
      cin>>g.hambacker;
      cout<<"Singl "<<endl;
      cin>>g.singl;
      return g;
   }
 
void outputGuit(guitar* guit)
   {
      for(int i=0;i<2;i++)
         outGu(guit[i]);
   }
 
void outGu(guitar g)
   {
      cout<<g;
   }
 
int main()
{
        SetConsoleOutputCP(1251);
   guitar Guit[10];
 
   inputGuit(Guit);
   outputGuit(Guit);
   system("pause");
   return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.11.2009, 00:55     Не могу въехать в перегрузку операций
Посмотрите здесь:

выполнить перегрузку C++
Организовать перегрузку оператора (=) C++
Программа на перегрузку [] - индекса C++
C++ Сделать перегрузку
C++ Что-то не могу въехать в задание
Обнаружить перегрузку кучи C++
Не могу разобраться в перегрузке операций в конструкторе C++
C++ написать перегрузку функций
C++ Где почитать про перегрузку поразрядных логических операций (|, &, ^)
Разработать перегрузку функций C++
Реализовать перегрузку операций = и == C++
C++ Реализовать перегрузку операций

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Monte-Cristo
2786 / 1372 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
30.11.2009, 01:12     Не могу въехать в перегрузку операций #2
Metal_666_,
вы ж уже задавали вопрос. не размножайте темы!

код
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
#include <iostream>
#include <windows.h>
using namespace std;
 
struct guitar
{
 
    int string;
    char name[30];
    int hambacker;
    int singl;
      
    friend void operator<<(ostream& out, guitar& gu);
 
};
   
   
void ingu(guitar& g);
void outGu(guitar);
void inputGuit(guitar* gui);
void outputGuit(guitar* guit);
 
int main()
{
   SetConsoleOutputCP(1251);
   guitar Guit[10];
 
   inputGuit(Guit);
   outputGuit(Guit);
   system("pause");
   return 0;
}
 
void inputGuit(guitar* gui)
{
    for(int i=0;i<2;i++)
    ingu(gui[i]);
}
 
 
void ingu(guitar& g)
{
    cout<<"String "<<endl;
    cin>>g.string;
    cout<<"Name "<<endl;
    cin>>g.name;
    cout<<"Hambacker "<<endl;
    cin>>g.hambacker;
    cout<<"Singl "<<endl;
    cin>>g.singl;
}
 
void outputGuit(guitar* guit)
{
    for(int i=0;i<2;i++)
        outGu(guit[i]);
}
 
void outGu(guitar g)
{
    cout<<g;
}
 
void operator<<(ostream& out, guitar& gu)
{
    out<<gu.string<<endl;
    out<<gu.name<<endl;
    out<<gu.hambacker<<endl;
    out<<gu.singl<<endl;
}
Metal_666_
15 / 15 / 2
Регистрация: 19.10.2009
Сообщений: 187
30.11.2009, 01:15  [ТС]     Не могу въехать в перегрузку операций #3
Больше не буду так делать,спасибо огромное за помощь,буду разбираться)))
Yandex
Объявления
30.11.2009, 01:15     Не могу въехать в перегрузку операций
Ответ Создать тему
Опции темы

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