Salve ragazzuoli.
Sono incorso in uno strano errore (e non ne riesco a venire a capo da ieri pomeriggio ormai) nel cercare di creare il mio primo "progetto" in C++.

In pratica volevo simulare una partita a carte...

Vi riporto le parti importanti del codice:

header.h
codice:
#include <string>

using std::string;
using namespace std;

class Carta{

private:
	int numero;
	string seme;
	
public:
	Carta::Carta(int num, string s);
	void Carta::stampaCarta();
	
};

class MazzoDiCarte{
	
	private:
		Carta mazzo[40];
		
	public:
		MazzoDiCarte::MazzoDiCarte();
//		Carta* MazzoDiCarte::mischiaMazzo(Carta list[]);
//		Carta MazzoDiCarte::pescaCarta();
};

class Partita{
	
	public:
		int prova;
		
};
carta.cpp
codice:
#include <string>
#include <iostream>
#include "header.h"

using namespace std;

Carta::Carta(int num, string s)
{
	numero = num;
	seme = s;
}

void Carta::stampaCarta()
{
	cout << "Carta: " << numero << " " << seme << endl;
}
mazzoDiCarte.cpp
codice:
#include <string>
#include <iostream>
#include "header.h"

using namespace std;

MazzoDiCarte::MazzoDiCarte()
{
	string semeCarta;
	int i, j;

	for(i=0; i<4; i++)
	{
		switch (i)
		{
			case 0: semeCarta = "Denari"; break;
			case 1: semeCarta = "Bastoni"; break;
			case 2: semeCarta = "Coppe"; break;
			case 3: semeCarta = "Spade"; break;
		}
		
		for(j=0; j<10; j++)
		{
			Carta carta1 = Carta(j+1, semeCarta);
			mazzo[10*i+j] = carta1;
//			carta1.stampaCarta();
		}
	} // end for esterno
	
	//stampa di prova
	for(i=0; i<40; i++)
	{
//cout << "Indirizzo: " << mazzo[i] << " - ";
		mazzo[i].stampaCarta();
	}
}
Utilizzando un array di puntatori a Carta, tutto va ok, tranne per il fatto che non mi stampa le carte nel secondo ciclo for (quello etichettato con "//stampa di prova"), utilizzando invece un normale array di oggetti Carta, ricevo il seguente errore:
codice:
 C:\Dev-Cpp\My Projects\PartitaCarte\mazzoDiCarte.cpp In constructor `MazzoDiCarte::MazzoDiCarte()': 
Linea 8 C:\Dev-Cpp\My Projects\PartitaCarte\mazzoDiCarte.cpp no matching function for call to `Carta::Carta()' 
 note C:\Dev-Cpp\My Projects\PartitaCarte\header.h:6 candidates are: Carta::Carta(const Carta&) 
 note C:\Dev-Cpp\My Projects\PartitaCarte\header.h:6                 Carta::Carta(int, std::string) 
 C:\Dev-Cpp\My Projects\PartitaCarte\Makefile.win [Build Error]  [mazzoDiCarte.o] Error 1
Potreste darmi una mano?
Ringrazio anticipatamente