KNX
04-09-2006, 19:52
Allora avrei un problemino su questo sorgente che in un futuro prossimo dovrà diventare un sette e mezzo :)
Questo è il codice:
#include <iostream>
#include <cstring>
#include <cstdlib>
#include <ctime>
using namespace std;
const int MAX_ROWS = 5;
const int MAX_COLUMNS = 11;
class Carta
{
public:
Carta();
Carta(int num, string se);
void generaCarta(Carta* mazzoide[MAX_ROWS][MAX_COLUMNS]);
void print() const;
private:
int numero;
string seme;
};
Carta::Carta(){}
Carta::Carta(int num, string se)
{
numero = num;
seme = se;
}
void Carta::print() const
{
cout<<numero<<" di "<<seme<<endl;
}
void Carta::generaCarta(Carta* mazzoide[MAX_ROWS][MAX_COLUMNS])
{
srand (time(0));
int randseme = rand() % 4;
int randnumero = rand() % 10;
if(mazzoide[randseme][randnumero] == NULL)
generaCarta(mazzoide);
else mazzoide[randseme][randnumero]->print();
mazzoide[randseme][randnumero] = NULL;
}
int main()
{
int righe_seme = 4;
int colonne_numero = 10;
int i = 1;
Carta* mazzo[righe_seme][colonne_numero];
for(int j = 0;j<colonne_numero;j++)
{
mazzo[0][j] = new Carta(i, "coppe");
mazzo[1][j] = new Carta(i, "denari");
mazzo[2][j] = new Carta(i, "bastoni");
mazzo[3][j] = new Carta(i, "spade");
i++;
}
for(int i=0;i<righe_seme;i++)
{
for(int j=0;j<colonne_numero;j++)
{
mazzo[i][j]->print();
}
}
generaCarta(mazzo);
}
ecco il problema è che quando lo vado a compilare mi scappa fuori che:
"error: generaCarta undeclared (first use this function)"
bho sarà una boiata ma la mia mente ottusa non trova niente di sbagliato
P.S.: nn è da molto che programmo...
grazie mille in anticipo
Questo è il codice:
#include <iostream>
#include <cstring>
#include <cstdlib>
#include <ctime>
using namespace std;
const int MAX_ROWS = 5;
const int MAX_COLUMNS = 11;
class Carta
{
public:
Carta();
Carta(int num, string se);
void generaCarta(Carta* mazzoide[MAX_ROWS][MAX_COLUMNS]);
void print() const;
private:
int numero;
string seme;
};
Carta::Carta(){}
Carta::Carta(int num, string se)
{
numero = num;
seme = se;
}
void Carta::print() const
{
cout<<numero<<" di "<<seme<<endl;
}
void Carta::generaCarta(Carta* mazzoide[MAX_ROWS][MAX_COLUMNS])
{
srand (time(0));
int randseme = rand() % 4;
int randnumero = rand() % 10;
if(mazzoide[randseme][randnumero] == NULL)
generaCarta(mazzoide);
else mazzoide[randseme][randnumero]->print();
mazzoide[randseme][randnumero] = NULL;
}
int main()
{
int righe_seme = 4;
int colonne_numero = 10;
int i = 1;
Carta* mazzo[righe_seme][colonne_numero];
for(int j = 0;j<colonne_numero;j++)
{
mazzo[0][j] = new Carta(i, "coppe");
mazzo[1][j] = new Carta(i, "denari");
mazzo[2][j] = new Carta(i, "bastoni");
mazzo[3][j] = new Carta(i, "spade");
i++;
}
for(int i=0;i<righe_seme;i++)
{
for(int j=0;j<colonne_numero;j++)
{
mazzo[i][j]->print();
}
}
generaCarta(mazzo);
}
ecco il problema è che quando lo vado a compilare mi scappa fuori che:
"error: generaCarta undeclared (first use this function)"
bho sarà una boiata ma la mia mente ottusa non trova niente di sbagliato
P.S.: nn è da molto che programmo...
grazie mille in anticipo