no matching function for call to

0

Mam następujący błąd z którym nie mogę sobie poradzić: " no matching function for call to 'Krawedz::Krawedz()' "

#include "Wierzcholek.hh"
#include "Krawedz.hh"
#include<iostream>
#include<vector>

using namespace std;


class GrafMacierz:protected Wierzcholek,protected Krawedz{
protected:
	int _liczbaWierzchholkow;
	int **_macierzSasiedztwa;
	vector<Wierzcholek> _listaWierzcholkow;
	vector<Krawedz> _listaKrawedzi;
public:
	GrafMacierz(int wierzcholki);
	~GrafMacierz();
	void wczytajGraf(string nazwa);
	void zapiszGraf(string nazwa);
	void zbuduj(int gestosc);
bool istniejeKrwedz(int i, int j);

};


GrafMacierz::GrafMacierz(int wierzcholki ):Krawedz(){

	_liczbaWierzchholkow=wierzcholki;
	_macierzSasiedztwa=new int*[_liczbaWierzchholkow];
	for(int i=0;i<_liczbaWierzchholkow;i++){
	_macierzSasiedztwa[i]=new int[_liczbaWierzchholkow];
	}
for(int i=0;i<_liczbaWierzchholkow;i++){
	for(int j=0;j<_liczbaWierzchholkow;j++){
	_macierzSasiedztwa[i][j]=0;
	}
}
#ifndef INC_KRAWEDZ_HH_
#define INC_KRAWEDZ_HH_

class Krawedz{
protected:
	int _wagaKrawedzi;
	int _wierzcholekStartowy;
	int _wierzcholekKoncowy;
public:
Krawedz(int ws,int wk,int waga){
	_wagaKrawedzi=waga;
		_wierzcholekStartowy=ws;
		_wierzcholekKoncowy=wk;
}
~Krawedz();

};


#endif /* INC_KRAWEDZ_HH_ */
1
  1. W jakim celu dziedziczysz z widocznością protected?
  2. Wystarczy wczytać się w to co mówi kompilator. Używasz bezargumentowego konstruktora Krawedz, a takiego nie ma.
  3. na oko: nie rozumiesz co robisz, GrafMacierz jest w/g ciebie jednoczesnie krawędzią i wierzchołkiem (wtf?)

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