Hi,
I have got seven error and I dont find why compiler find error..
//commission class definition
#ifndef COMMISSION_H
#define COMMISSION_H
#include <string>
using std::string;
class Commission
{
public:
Commission(cons t string &,const string &,const string &,const string &,double=0.0,do uble=0.0);
void setFirstName(co nst string &);
string getFirstName() const;
void setLastName(con st string &);
string getLastName() const;
void setSocialSecuri tyNumber(const string &);
string getSocialSecuri tyNumber() const;
void setGrossSales(d ouble);
double getGrossSales() const;
void setCommissionRa te(double);
double getCommissionRa te() const;
double earnings() const;
void print() const;
private:
string firstName;
string lastName;
string socialSecurityN umber;
double grossRate;
double commmisionRate;
};
#endif
//base class definition
#ifndef BASE_H
#define BASE_H
#include <string>
using std::string;
#include "commission .h"
class Base
{
public:
Base(const string &,const string &,const string &,const string &,double=0.0,do uble=0.0,double =0.0);
void setBaseSalary(d ouble);
double getBaseSalary() const;
double earnings() const;
void print() const;
private:
double baseSalary;
};
#endif
//Commission class member function definitions
#include <iostream>
using std::cout;
#include "commission .h"
Commission::Com mission(const string &first,const string &last,const string &ssn,double sales,double rate)
:firstName(firs t),lastName(las t),socialSecuri tyNumber(ssn)
{
setGrossSales(s ales);
setCommissionRa te(rate);
}
void Commission::set FirstName(const string &first)
{
firstName = first;
}
string Commission::get FirstName() const
{
return firstName;
}
void Commission::set LastName(const string &last)
{
lastName = last;
}
string Commission::get LastName() const
{
return lastName;
}
void Commission::set SocialSecurityN umber(const string &ssn)
{
socialSecurityN umber = ssn;
}
string Commission::get SocialSecurityN umber() const
{
return socialSecurityN umber;
}
void Commission::set GrossSales(doub le sales)
{
grossSales = (sales<0.0 ? 0.0 : sales);
}
double Commission::get GrossSales() const
{
return grossSales;
}
void Commission::set CommissionRate( double rate)
{
grossRate = (rate>0.0 && rate<1.0) rate : 0.0;
}
double Commission::get CommissionRate( ) const
{
return grossRate;
}
double Commission::ear nings() const
{
return getCommissionRa te() * getGrossSales() ;
}
void Commission::pri nt() const
{
cout << "Commision employee :"
<< getFirtName() << ' ' << getLastName()
<< "\nsocial security number :" << getSocialSecuri tyNumber()
<< "\ngross sales :" << getGrossSales()
<< "\ncommissi on rate :" << getCommissionRa te();
}
//base class member function definitions
#include <iostream>
using std::cout;
#include "base.h"
Base::Base(cons t string &first,const string &last,const string &ssn,double,dou ble,double)
:Commission(fir st,last,ssn,sal es,rate)
{
setBaseSalary(s alary);
}
void Base::setBaseSa lary(double salary)
{
baseSalary = (salary<0.0) ? 0.0 ? salary;
}
double Base::getBaseSa lary() const
{
return baseSalary;
}
double Base::earnings( ) const
{
return getBaseSalary() + Commission::ear nings(9;
}
void Base::print() const
{
cout << "base salaried ";
Commission::pri nt();
cout < "\nbase salary: " << getBaseSalary() ;
}
//test main
#include <iostream>
using namespace std;
#include <iomanip>
using std::setprecisi on;
#include "base.h"
int main()
{
Commission x("Sue","Jones" ,"2222-1111",10000,.06 );
Commission *xPtr = 0;
Base y("Bob","Lewis" ,"33-3333",5000,.04, 300);
Base *yPtr = 0;
cout << fixed << setprecision(20 );
x.print();
cout << "\n\n";
y.print();
xPtr = &x;
xPtr->print();
yPtr = &y;
yPtr->print();
xPtr = &y;
xPtr->print();
return 0;
}
and I find this errorr ...
C:\Program Files\Microsoft Visual Studio\MyProjec ts\poly\commiss ionsource.cpp(8 ) : error C2511: 'Commission::Co mmission' : overloaded member function 'void (const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char>
> &,const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,double,double )' not found in 'Commission'
c:\program files\microsoft visual studio\myprojec ts\poly\commiss ion.h(9) : see declaration of 'Commission'
C:\Program Files\Microsoft Visual Studio\MyProjec ts\poly\commiss ionsource.cpp(8 0) : fatal error C1004: unexpected end of file found
basesource.cpp
C:\Program Files\Microsoft Visual Studio\MyProjec ts\poly\basesou rce.cpp(8) : error C2511: 'Base::Base' : overloaded member function 'void (const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,const class st
d::basic_string <char,struct std::char_trait s<char>,class std::allocator< char> > &,const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,double,double ,double)' not found in 'Base'
c:\program files\microsoft visual studio\myprojec ts\poly\base.h( 11) : see declaration of 'Base'
C:\Program Files\Microsoft Visual Studio\MyProjec ts\poly\basesou rce.cpp(37) : fatal error C1004: unexpected end of file found
main.cpp
C:\Program Files\Microsoft Visual Studio\MyProjec ts\poly\main.cp p(13) : error C2664: '__thiscall Commission::Com mission(const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,const class std::basic_stri ng<cha
r,struct std::char_trait s<char>,class std::allocator< char> > &,const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char
> > &,double,double )' : cannot convert parameter 4 from 'const int' to 'const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &'
Reason: cannot convert from 'const int' to 'const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> >'
No constructor could take the source type, or constructor overload resolution was ambiguous
C:\Program Files\Microsoft Visual Studio\MyProjec ts\poly\main.cp p(17) : error C2664: '__thiscall Base::Base(cons t class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,const class std::basic_stri ng<char,struct std
::char_traits<c har>,class std::allocator< char> > &,const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &,double
,double,double) ' : cannot convert parameter 4 from 'const int' to 'const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> > &'
Reason: cannot convert from 'const int' to 'const class std::basic_stri ng<char,struct std::char_trait s<char>,class std::allocator< char> >'
No constructor could take the source type, or constructor overload resolution was ambiguous
C:\Program Files\Microsoft Visual Studio\MyProjec ts\poly\main.cp p(32) : error C2440: '=' : cannot convert from 'class Base *' to 'class Commission *'
Types pointed to are unrelated; conversion requires reinterpret_cas t, C-style cast or function-style cast
Error executing cl.exe.