Witam!
Mam problem z konstruktorem:
#include<iostream>
using namespace std;
class naganiacz
{
public:
int ilosc_naganiaczy;
int max_ilosc_ruchow_n;
char symbol_n;
naganiacz(int _ilosc_naganiaczy)
{
symbol_n = 'N';
max_ilosc_ruchow_n = 2;
ilosc_naganiaczy = _ilosc_naganiaczy;
};
};
class zwierze
{
public:
zwierze(){};
};
class agresywne:public zwierze
{
public:
int max_ilosc_ruchow_a;
int ilosc_agresywnych;
agresywne(int _ilosc_agresywnych,const zwierze & z): zwierze (z)
{
ilosc_agresywnych = _ilosc_agresywnych;
max_ilosc_ruchow_a = 3;
};
};
class lagodne:public zwierze
{
public:
int ilosc_lagodnych;
int max_ilosc_ruchow_l;
lagodne(int _ilosc_lagodnych,const zwierze & z): zwierze (z)
{
ilosc_lagodnych = _ilosc_lagodnych;
max_ilosc_ruchow_l = 1;
};
};
class lew:public agresywne
{
public:
char symbol_l;
lew(const agresywne & a): agresywne (a)
{
symbol_l = 'L';
};
};
class malpa:public lagodne
{
public:
char symbol_m;
malpa(const lagodne & l): lagodne (l)
{
symbol_m = 'M';
};
};
class pionek:public naganiacz,public malpa,public lew
{
public:
char x;
string y;
int z;
pionek(const naganiacz & n): naganiacz(n)
{
};
pionek(const malpa & m): malpa(m)
{
};
pionek(const lew & le): lew(le)
{
};
};
int main()
{
naganiacz n(2);
zwierze z;
lagodne l(3,z);
agresywne a(4,z);
malpa m1(l);
lew l1(a);
pionek p1(m1);
pionek p2(l1);
pionek p3(n);
cout << m1.symbol_m << endl;
cout << l1.symbol_l << endl;
cout << n.symbol_n << endl;
system ("pause");
return 0;
}
Po kompilacji otrzymuje cos takiego:
IntelliSense: no default constructor exists for class "naganiacz"
IntelliSense: no default constructor exists for class "naganiacz"
IntelliSense: no default constructor exists for class "malpa"
Error 3 error C2512: 'naganiacz' : no appropriate default constructor available
Error 5 error C2512: 'naganiacz' : no appropriate default constructor available
Error 1 error C2512: 'malpa' : no appropriate default constructor available
Error 6 error C2512: 'malpa' : no appropriate default constructor available
Error 2 error C2512: 'lew' : no appropriate default constructor available
Error 4 error C2512: 'lew' : no appropriate default constructor available