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

Наследование. Ошибка - C++

Восстановить пароль Регистрация
 
Huligan799
-72 / 1 / 0
Регистрация: 23.04.2010
Сообщений: 149
13.05.2013, 20:34     Наследование. Ошибка #1
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 <conio.h>
#include <stdlib.h>
#include <string.h>
class gai1 {
protected:
char marka[10];
int nomer;
char color[10];
public:
gai1(char marka1[10], int nomer1, char color1[10]);
};
gai1::gai1(char marka1[10], int nomer1, char color1[10])
     {strcpy(marka,marka1); nomer=nomer1; strcpy(color,color1);}
class gai:public gai1
{protected:
int god;
char vladelec[20];
public:
gai (char marka1[10], int nomer1, char color1[10], int god1, char vladelec1[20]):gai1(char marka1[10], int nomer1, char color1[10]){god=god1; strcpy(vladelec,vladelec1);}
void print();
int getnomer() {return nomer;}
char getmarka() {return *marka;}
char getcolor() {return *color;}
int getgod() {return god;}
};
void gai::print() {cout<<"\nmarka= "<<marka;
           cout<<"\nnomer= "<<nomer;
           cout<<"\ncvet= "<<color;
           cout<<"\ngod= "<<god;
           cout<<"\nvladelec= "<<vladelec<<"\n";}
void main()
{
clrscr();
gai ob[3]={gai("audi_a8",555,"belyj",2012,"Ahmedov R."),
gai("vaz_21074",777,"krasnyj",2010,"Magomedov D."),
gai("vaz_21099",666,"chernyj",2012,"Aliev A.")};
 
int k,i,n;
char m[10],c[10];
cout<<"\nSvedeniya ob Avto s ukazannoj marki i cveta - 1.";
cout<<"\nSvediniya ob Avto s ukazannym nomerom - 2.";
cout<<"\nSvedeniya o Avto ukazannogo goda vypuska - 3.";
cout<<"\n\nVvedite chislo: ";
cin>>k;
switch (k)
{case 1:
cout<<"Vvedite marku: "; cin>>m;
cout<<" i cvet: "; cin>>c;
for (i=0; i<=3; i++) {
if (*m==ob[i].getmarka() && *c==ob[i].getcolor())  ob[i].print();} break;
 
case 2:
cout<<"\nVvedite registracionnyj nomer: ";
cin>>n;   for ( i=0; i<=3; i++) {
if (n==ob[i].getnomer())  ob[i].print();} break;
 
case 3:
cout<<"\nVvedite god vypuska: ";
cin>>n;
for (i=0; i<=3; i++) {
if (n==ob[i].getgod())  ob[i].print();} break;
}
}
Как устранить вот такую вот ошибочку?)))
Миниатюры
Наследование. Ошибка  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,163
Завершенные тесты: 2
13.05.2013, 21:17     Наследование. Ошибка #2
компилятор WinGW

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
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
 
 
class gai1 {
protected:
    char marka[10];
    int nomer;
    char color[10];
public:
    gai1(char marka1[10], int nomer1, char color1[10]);
};
gai1::gai1(char marka1[10], int nomer1, char color1[10])
{strcpy(marka,marka1); nomer=nomer1; strcpy(color,color1);}
class gai:public gai1
{protected:
    int god;
    char vladelec[20];
public:
    gai (char marka1[10], int nomer1, char color1[10], int god1, char vladelec1[20]):gai1(marka1, nomer1, color1){god=god1; strcpy(vladelec,vladelec1);}
    void print();
    int getnomer() {return nomer;}
    char getmarka() {return *marka;}
    char getcolor() {return *color;}
    int getgod() {return god;}
};
void gai::print() {std::cout<<"\nmarka= "<<marka;
                   std::cout<<"\nnomer= "<<nomer;
                   std::cout<<"\ncvet= "<<color;
                   std::cout<<"\ngod= "<<god;
                   std::cout<<"\nvladelec= "<<vladelec<<"\n";}
int main()
{
 
    gai ob[3]={gai("audi_a8",555,"belyj",2012,"Ahmedov R."),
               gai("vaz_21074",777,"krasnyj",2010,"Magomedov D."),
               gai("vaz_21099",666,"chernyj",2012,"Aliev A.")};
 
    int k,i,n;
    char m[10],c[10];
    std::cout<<"\nSvedeniya ob Avto s ukazannoj marki i cveta - 1.";
    std::cout<<"\nSvediniya ob Avto s ukazannym nomerom - 2.";
    std::cout<<"\nSvedeniya o Avto ukazannogo goda vypuska - 3.";
    std::cout<<"\n\nVvedite chislo: ";
    std::cin>>k;
    switch (k)
    {case 1:
        std::cout<<"Vvedite marku: "; std::cin>>m;
        std::cout<<" i cvet: "; std::cin>>c;
        for (i=0; i<=3; i++) {
            if (*m==ob[i].getmarka() && *c==ob[i].getcolor())  ob[i].print();} break;
 
    case 2:
        std::cout<<"\nVvedite registracionnyj nomer: ";
        std::cin>>n;   for ( i=0; i<=3; i++) {
            if (n==ob[i].getnomer())  ob[i].print();} break;
 
    case 3:
        std::cout<<"\nVvedite god vypuska: ";
        std::cin>>n;
        for (i=0; i<=3; i++) {
            if (n==ob[i].getgod())  ob[i].print();} break;
    }
}
Huligan799
-72 / 1 / 0
Регистрация: 23.04.2010
Сообщений: 149
14.05.2013, 15:32  [ТС]     Наследование. Ошибка #3
Цитата Сообщение от Кудаив Посмотреть сообщение
компилятор WinGW
не понял

Добавлено через 18 часов 3 минуты
поооомооооооогитеееееее
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,163
Завершенные тесты: 2
14.05.2013, 15:36     Наследование. Ошибка #4
ты у себя попробовал мой код?

Добавлено через 2 минуты
хотябы сравнил со своим?
сайфонг
 Аватар для сайфонг
0 / 0 / 0
Регистрация: 13.05.2013
Сообщений: 6
14.05.2013, 15:39     Наследование. Ошибка #5
помогите разобраться с С++ в Visual Studio
Huligan799
-72 / 1 / 0
Регистрация: 23.04.2010
Сообщений: 149
14.05.2013, 15:39  [ТС]     Наследование. Ошибка #6
Цитата Сообщение от Кудаив Посмотреть сообщение
ты у себя попробовал мой код?

Добавлено через 2 минуты
хотябы сравнил со своим?
ну конечно. Вот сейчас удалив везде "std::" программа заработала))) Спасибо большое. std:: что такое?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.05.2013, 15:46     Наследование. Ошибка
Еще ссылки по теме:

C++ Заменить наследование классов на наследование интерфейсов
C++ Как правильно производится наследование элементов от шаблона класса? В чем ошибка?
C++ Не могу понять, в чем ошибка. Наследование классов

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

Или воспользуйтесь поиском по форуму:
Кудаив
329 / 406 / 24
Регистрация: 27.05.2012
Сообщений: 1,163
Завершенные тесты: 2
14.05.2013, 15:46     Наследование. Ошибка #7
поищи "namespace std"
Yandex
Объявления
14.05.2013, 15:46     Наследование. Ошибка
Ответ Создать тему
Опции темы

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