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

Не могу понять, в чем ошибка. Наследование классов - C++

Восстановить пароль Регистрация
 
drevmix
3 / 3 / 0
Регистрация: 31.05.2013
Сообщений: 25
16.04.2014, 00:10     Не могу понять, в чем ошибка. Наследование классов #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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include <iostream>
#include <string>
using namespace std;
class human
{
protected:
    int age,weight, height;
    string name;
public:
    human(int a, string b, int c, int d)
    {
        age=a;
        name=b;
        weight=c;
        height=d;
    }
    void lol()
    {
    cout<<"Class human created!";
    }
    human();
};
class inspector : public human
{
public:
    int teeth; 
    string country;
    inspector()
    {
        age=35;
        name="Barney Stinson";
        weight=70;
        height=185;
        teeth=32;
        country="USA";
    }
    void inspectorinfo()
    {
        cout<<"Age : "<<age;
        cout<<"Name : "<<name;
        cout<<"Weight : "<<weight;
        cout<<"Height : "<<height;
        cout<<"Teeth : "<<teeth;
        cout<<"Country : "<<country;
    }
};
class programmer : public human
{
public:
    string experience, stan;
    programmer()
    {
        age=18;
        name="Marshall Eriksen";
        weight=80;
        height=189;
        experience=3;
        stan="fine";
    }
    void programmerinfo()
    {
        cout<<"Age : "<<age;
        cout<<"Name : "<<name;
        cout<<"Weight : "<<weight;
        cout<<"Height : "<<height;
        cout<<"Experience : "<<experience;
        cout<<"Stan : "<<stan;
    }
};
int main()
{
    human h;
    h.lol();
    inspector i;
    i.inspectorinfo();
    programmer p;
    p.programmerinfo();
    system("pause");
    return 0;
}

Собственно ошибка: 1>laba2.obj : error LNK2019: unresolved external symbol "public: __thiscall human::human(void)" (??0human@@QAE@XZ) referenced in function _main

Спасибо за внимание.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2014, 00:10     Не могу понять, в чем ошибка. Наследование классов
Посмотрите здесь:

не могу понять в чем ошибка. C++
Не могу понять в чем ошибка C++
C++ не могу понять в чем ошибка
Не могу понять в чем ошибка C++
C++ не могу понять в чем ошибка
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
16.04.2014, 00:17     Не могу понять, в чем ошибка. Наследование классов #2
drevmix, У вас объявленные конструктор по умолчанию, но нет его реализации

Добавлено через 1 минуту
Цитата Сообщение от drevmix Посмотреть сообщение
human();
можно написать так
C++
1
human() {};
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11843 / 6822 / 771
Регистрация: 27.09.2012
Сообщений: 16,915
Записей в блоге: 2
Завершенные тесты: 1
16.04.2014, 00:21     Не могу понять, в чем ошибка. Наследование классов #3
Цитата Сообщение от cooller_94 Посмотреть сообщение
можно написать так
а инициализация данных?
IrineK
Заблокирован
16.04.2014, 00:22     Не могу понять, в чем ошибка. Наследование классов #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Строка 21

C++
1
 human() : age(0), weight(0), height(0), name("\0") {}
drevmix
3 / 3 / 0
Регистрация: 31.05.2013
Сообщений: 25
16.04.2014, 00:25  [ТС]     Не могу понять, в чем ошибка. Наследование классов #5
Спасибо всем, разобрался
IrineK
Заблокирован
16.04.2014, 00:28     Не могу понять, в чем ошибка. Наследование классов #6
Это так задумано, чтобы все инспектора и кодеры были на одно лицо?
Croessmah
16.04.2014, 00:29
  #7

Не по теме:

Цитата Сообщение от IrineK Посмотреть сообщение
Это так задумано, чтобы все инспектора и кодеры были на одно лицо?
Звездные войны: Война клонов

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.04.2014, 00:30     Не могу понять, в чем ошибка. Наследование классов
Еще ссылки по теме:

Не могу понять в чем ошибка? C++
Не могу понять в чем ошибка?! C++
Не могу понять в чем ошибка? C++

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

Или воспользуйтесь поиском по форуму:
cooller
 Аватар для cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
16.04.2014, 00:30     Не могу понять, в чем ошибка. Наследование классов #8
Цитата Сообщение от Croessmah Посмотреть сообщение
а инициализация данных?
Не инициализировать данные конечно не хорошо, но я предполагал что для тс данные класс просто информативный и выступает интерфейсом для классов - наследников. В таком случае не сильно большой грех непроинициализировать данные в конструкторе по умолчанию,имхо
Yandex
Объявления
16.04.2014, 00:30     Не могу понять, в чем ошибка. Наследование классов
Ответ Создать тему
Опции темы

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