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

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

Войти
Регистрация
Восстановить пароль
 
drevmix
3 / 3 / 0
Регистрация: 31.05.2013
Сообщений: 25
#1

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

16.04.2014, 00:10. Просмотров 317. Ответов 7
Метки нет (Все метки)

Начал изучать наследование классов и и "затормозил" на такой простенькой программе. Не могу понять в чем ошибка.
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++
Всем доброго время суток целый день бьюсь, не понимаю в чем ошибка: #include &lt;iostream&gt; using std::endl; int myFunc(unsigned short...

В чем ошибка не могу понять? - C++
#include &lt;iostream.&gt; #include &lt;stdio.h&gt; #include &lt;cmath&gt; int main() { double S = 0.0; for (int i=1; i&lt;=10;...

Не могу понять в чем ошибка?! - C++
Задание: -Визначити кількість вузлів дерева, в яких є два нащадки. -функция добавления елемента -функцию удаления елемента -функцію...

Не могу понять в чем ошибка? - C++
Выдает ошибки а в чем проблемма не пойму (программирую недавно) Unit1.cpp(94): W8004 'p' is assigned a value that is never used ...

Не могу понять в чем ошибка - C++
написать программу в CodeBlocks, никак не могу понять в чем ошибка. Найти периметр эллипса по двум радиусам. #include &lt;iostream&gt; ...

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

Добавлено через 1 минуту
Цитата Сообщение от drevmix Посмотреть сообщение
human();
можно написать так
C++
1
human() {};
Croessmah
Модератор
Эксперт CЭксперт С++
12980 / 7292 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 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++
#include &lt;stdlib.h&gt; #include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;graphics.h&gt; #include &lt;math.h&gt; #include &lt;process.h&gt; ...

Не могу понять в чем ошибка - C++
Мне нужно сделать менюшку, в которую я записываю данный в бинарный файл, но после ввода имени, у меня выдает 2 cout'a и не могу ввести...

не могу понять в чем ошибка - C++
Задание: Найти наибольший элемент каждой пары из массива А и записать их в новый массив. Получить из него массив четных положительных...


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

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

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