[c++] Dziedziczenie->konstruktor

0

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

0

Albo popraw odpowiednie klasy tak, aby miały poprawne domyślne konstruktory, albo dopracuj listę inicjalizacyjną kostruktorów klasy pionek ...

1 użytkowników online, w tym zalogowanych: 0, gości: 1