Oct 16, 2014 at 1:14pm
I wrote this code and I cant figure out where it's all gone wrong. My complier says "ld returned 1 exit status"
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
#include <iostream>
class Employee {
public:
Employee(int age, int yearsOfService, int salary);
~Employee() {};
int GetAge() const { return itsAge; }
int GetYearsOfService() const { return itsYearsOfService; }
int GetSalary() const { return itsSalary; }
float GetThousands() { return itsSalary / 1000; }
private:
int itsAge;
int itsYearsOfService;
int itsSalary;
};
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
#include "Employee.hpp"
Employee::Employee(int age, int yearsOfService, int salary) {
itsAge = age;
itsYearsOfService = yearsOfService;
itsSalary = salary;
}
int main() {
Employee Ivan(54, 8, 11000);
Employee Dorian(40, 4, 5500);
std::cout << "Ivan's " << Ivan.GetAge() << " years old.\n";
std::cout << "He has been working there for " << Ivan.GetYearsOfService() << " years,\n";
std::cout << "but his salary is only " << Ivan.GetSalary() << "$.\n";
std::cout << "and " << (Ivan.GetThousands() * 1000) * 12 << "$ a year.\n\n";
std::cout << "Dorian's " << Dorian.GetAge() << "years old.\n";
std::cout << "He has been working there for " << Dorian.GetYearsOfService() << " years,\n";
std::cout << "but his salary is " << Dorian.GetSalary() << "$.\n\n";
}
|
Thanks!
Last edited on Oct 16, 2014 at 4:29pm
Oct 16, 2014 at 1:20pm
Show your constructor definition. And do you link file where that definition is located?
Oct 16, 2014 at 2:04pm
Idk if this matters but shouldnt he remove #include <iostream> from his main function since it is already used in the Employee.hpp?
Oct 16, 2014 at 2:57pm
MiiNiPaa This is all of the code. What shoud I do?
coltehrman fixed
Last edited on Oct 16, 2014 at 2:59pm
Oct 16, 2014 at 3:00pm
Well, apparently you need to define declared Employee(/*...*/)
constructor
Oct 16, 2014 at 4:31pm
Thanks I did it and it works. I will update the code.
PS: I am learning c++ for I week.