» »

Cannot convert parameter

Cannot convert parameter

fish555 ::

Imam sledeč problem:

Imam 3 razrede Kot, Kraj in Pot. Uporabim takšen konstruktor:

Pot pot1(&krajMaribor,&krajCelje,&krajLjubljana);

Kot definicijo konstrukturja pa imam takšno kodo, torej dinamično alokacijo pomnilnika:

Pot::Pot(Kraj kstart, Kraj kvia, Kraj kcilj) {
start=new Kraj(kstart);
via=new Kraj(kvia);
cilj=new Kraj(kcilj);

Zgleda da v tem delu kode pride do napake, saj mi prevajalnik javi - cannot convert parameter 1 from 'Kraj *' to 'Kraj' No constructor could take the source type, or constructor overload resolution was ambiguous



Tukaj sta še definicija in deklaracija celotega razreda pot

class Pot {
  private:
  Kraj* start;
  Kraj* via;
  Kraj* cilj;

public:
	 Pot(); 
     Pot(Kraj kstart, Kraj kvia, Kraj kcilj); 
    ~Pot(); 

	Kraj *getStart () {return start;}
	Kraj *getVia () {return via;}
	Kraj *getCilj () {return cilj;}

	void setStart (Kraj st) {*start=st;}
	void setVia (Kraj vi) {*via=vi;}
	void setCilj (Kraj ci) {*cilj=ci;}
};




Pot::Pot() {
	start=NULL;
	via=NULL;
	cilj=NULL;
}

Pot::Pot(Kraj kstart, Kraj kvia, Kraj kcilj) {
	start=new Kraj(kstart);
	via=new Kraj(kvia);
	cilj=new Kraj(kcilj);
}
Pot::~Pot() {
	delete start;
	delete via;
	delete cilj;
}



V čem bi lahko bil tukaj problem?

Spura ::

V čem bi lahko bil tukaj problem?
Problem je v tem, da ti ne locis med pointerjem in objektom hohohohohoho. Poleg tega si pozabil podat definicijo razreda Kraj.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C++] enosmerno povezan seznam

Oddelek: Programiranje
63776 (1660) 3p
»

[java]problem z Throws

Oddelek: Programiranje
221599 (1128) killa bee
»

metoda #get, #set ---> c#

Oddelek: Programiranje
121245 (1129) fokz8
»

[c#] Ustvarjanje objekta v drugem razredu

Oddelek: Programiranje
81648 (1593) Cvenemir
»

C++ - no appropriate default constructor available

Oddelek: Programiranje
7812 (761) boogie_xlr

Več podobnih tem