Błąd nie można dokonać konwersji argumentu 2 z „float” do „std::string" - dziedziczenie

0

#include <cmath>
#include "pch.h"
#include <iostream>
#include <string>
#define M_PI 3.14159265358979323846

using namespace std;

class Punkt
{
	float x, y;
	string nazwa;

public:
	void wyswietl()
	{
		cout << nazwa << "(" << x << "," << y << ")" << endl;
		
	}
	Punkt(string n = "S", float a = 0, float b = 0)
	{
		nazwa = n;
		x = a;
		y = b;
	}
};

class Kolo :public Punkt //klasa Kolo dziedziczy publicznie z klasy Punkt
{
	
	string nazwa;
protected:
	float r;

public:
	void wyswietl()
	{
		cout << "Kolo o nazwie: " << nazwa << endl;
		cout << "Srodek kola: " << endl;
		Punkt::wyswietl();
		cout << "Promien: " << r << endl;
		cout << "Pole kola : " << M_PI * r*r << endl;
	}

	Kolo(string nk = "Kolko", string n = "S", float a = 0, float b = 0, float pr = 1)
		:Punkt(n, a, b)
	{
		nazwa = nk;
		r = pr;
	}
};

class Kula :public Kolo //klasa Kula dziedziczy publicznie z klasy Kolo
{

	string nazwa; //wszystkie inne atrybuty sa dziedziczone, tylko nazwa bedzie inna


public:
	void wyswietl()

	{
		Kula::wyswietl();   //wyswietla sie punkt i kolo
		cout << "Objetosc kuli : " << 4 / 3 * M_PI* r *r *r << endl;  //dodatkowo wyswietlenie objetosci kuli
	}



	Kula(string nk2 = "Kula", string n = "S", float a = 0, float b = 0, float pr = 1)
		:Kolo(n, a, b, pr)
	{
		
		nazwa = nk2;
		
	}
};


int main()
{
	Kula k1;
	k1.wyswietl();

	return 0;
}

Gdzie jest błąd w tym kodzie?
Wyskakuje błąd

Błąd C2664 „Kolo::Kolo(Kolo &&)”: nie można dokonać konwersji argumentu 2 z „float” do „std::string”
żadne wystąpienie konstruktora "Kolo::Kolo" nie jest zgodne z listą argumentów

1

Masz konstruktor który przyjmuje string, string, float, float, float a przekazujesz string, float, float, float.

0

Dziękuję bardzo :)

0

Dziedziczenie Koła z Punktu jest błędne.
Dziedziczenie chłopskim językiem wyraża się przez "jest", tu by było "Koło jest Punktem", co nie ma sensu.
Zarazem możesz przećwiczyć, że klasa Koło ZAWIERA Punkt środkowy

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