Inheritage between classes and printout

I get an error here. Anybody knows what I´m doing wrong. This is new to me and I can use the help.

error LNK2019: unresolved external symbol "public:

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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
  What am I doing wrong here?

//Main.cpp

#include <iostream>
#include <string>
#include "Herbivores.h"

using namespace std;

int main() {

	Animals a;
	Herbivores h;

	cout << endl;

	h.setName("Rabbit");
	h.setSpeed(100);
	h.setHerbs("Carrot");
	a.printInfo();

	return 0;
}

//Animals.h - Base/Parent Class
//Animal class definition.

#ifndef ANIMALS_H
#define ANIMALS_H

#include <iostream>
#include <string>

using namespace std;

class Animals {
public:
	//Default Constructor
	Animals() : name(""), speed(0), eating("") {}

	//Overload Constructor
	Animals(string theName, int theSpeed, string theEating);

	//Accessor Function
	string getName() const;
		//getName - returns name
		//@return string - name

	int getSpeed() const;
		//getSpeed - returns speed
		//@return string - speed

	string getEating() const;
	//getEating - returns eating
	//@return string - eating

	//Mutator Function
	void setName(string);
		//setName - sets Name

	int setSpeed(int);
		//setSpeed - sets Speed

	void setEating(string);
	//setEating - sets Eating

	/*void setSound(string);
		//setSound - sets Sound*/

	//Destructor
	~Animals();

	//getArea
	void printInfo() const;
		//printInfo - print out name and speed

private:
	string name;
	int speed;
	string eating;
	
};

#endif

//Animals.cpp
#include "Animals.h"

Animals::Animals(string theName, int theSpeed, string theEating)
{
  name = theName;
  speed = theSpeed;
  eating = theEating;
}

string Animals::getName() const
{
  return name;
}

int Animals::getSpeed() const
{
  return speed;
}

string Animals::getEating() const
{
  return eating;
}

void Animals::printInfo() const
{
	cout << "Name: " << name << endl
		<< "Speed: " << speed << endl
		<< "Eating: " << eating << endl;
}

//Herbivores.h - Base/Parent Class
//Herbivores class definition.
#ifndef HERBIVORES_H
#define HERBIVORES_H

#include "Animals.h"

class Herbivores : public Animals 
{
public:
	Herbivores(string theName, int theSpeed, string theEating);

	Herbivores() : herbs("") {}

	string getHerbs() const;
		//getHerbs - returns herbs
		//@return string - herbs*/

	void setHerbs(string);
		//setName - sets Name

private:
  string herbs;
};

#endif 

// Herbivores.cpp

#include "Herbivores.h"

string Herbivores::getHerbs() const
{
  return herbs;
}


Last edited on
Please share complete error msg.....
error LNK2019: unresolved external symbol "public:


This is not the full error. Could you copy paste the error?
You did not implement the 'Mutator Function's setName(...) etc.
Topic archived. No new replies allowed.