PDA

View Full Version : [C++] problema costruttore


Alez22g
02-07-2010, 13:53
implementando una classe con il seguente costruttore riscontro degli errori in compilazione! chi mi aiuta?
il costruttore è :

Prod::Prod()
{
price=1;
score=0;
}

l'errore è:
error: new types may not be defined in a return type
error: return type specification for constructor invalid

RaouL_BennetH
02-07-2010, 14:36
implementando una classe con il seguente costruttore riscontro degli errori in compilazione! chi mi aiuta?
il costruttore è :

Prod::Prod()
{
price=1;
score=0;
}

l'errore è:
error: new types may not be defined in a return type
error: return type specification for constructor invalid

A naso sembra che tu stia sia dichiarando che inizializzando le due variabili all'interno del costruttore.

Se fai:


Prod::Prod(int price, int score)
{
this.price = price;
this.score = score;
}

//e quando chiami il costruttore:

Prod p = new Prod(1, 0)



ti da errori ?

fero86
02-07-2010, 14:41
implementando una classe con il seguente costruttore riscontro degli errori in compilazione! chi mi aiuta?
il costruttore è :

Prod::Prod()
{
price=1;
score=0;
}

l'errore è:
error: new types may not be defined in a return type
error: return type specification for constructor invalid posta tutto il codice della classe Prod e usa il tag CODE.

tomminno
02-07-2010, 15:04
A naso sembra che tu stia sia dichiarando che inizializzando le due variabili all'interno del costruttore.

Se fai:


Prod::Prod(int price, int score)
{
this.price = price;
this.score = score;
}

//e quando chiami il costruttore:

Prod p = new Prod(1, 0)



ti da errori ?

Sicuramente gli darà errori :D

Prod::Prod(int price, int score)
{
this->price = price;
this->score = score;
}

//Oppure meglio ancora:
//Prod::Prod(int price, int score) : price(price), score(score)
//{
//}

Prod * p = new Prod(1, 0);

RaouL_BennetH
02-07-2010, 15:17
Sicuramente gli darà errori :D

Prod::Prod(int price, int score)
{
this->price = price;
this->score = score;
}

//Oppure meglio ancora:
//Prod::Prod(int price, int score) : price(price), score(score)
//{
//}

Prod * p = new Prod(1, 0);


:doh:

Avevo letto C# !!
mi chiedevo infatti (stavo googlando) per vedere cosa fosse la notazione "::"
vabbè... gaffe giornaliera effettuata, mi sono tolto il pensiero :D

astorcas
02-07-2010, 15:55
:doh:

Avevo letto C# !!
mi chiedevo infatti (stavo googlando) per vedere cosa fosse la notazione "::"
vabbè... gaffe giornaliera effettuata, mi sono tolto il pensiero :D

il "::" esiste anche in c# cmq dai :fagiano:
link (http://msdn.microsoft.com/en-us/library/htccxtad.aspx)

fero86
02-07-2010, 20:12
edit - scusate, sono fuso :fagiano: