Bonjour tout le monde,

Je dois charger le contenu d'un fichier txt mais j'ai déjà un problème

Mon problème se situe dans cette méthode :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
bool CTabFauxFreres::TraiterLigne(const CChargeurFichierTexte& Chargeur)
{
	if (Chargeur.NombreChamps() == 7) Ajouter(CFauxFrere(Chargeur.Champs(0),Chargeur.Champs(1),Chargeur.Champs(2),Chargeur.Champs(3),Chargeur.Champs(4),Chargeur.Champs(5),Chargeur.Champs(6)));
	return true;
}
et le message d'erreur est le suivant :

error C2665: 'CFauxFrere::CFauxFrere' : none of the 3 overloads can convert parameter 1 from type 'const char *'
La méthode TraiterLigne est appelée par cette méthode :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
bool CTabFauxFreres::Charger(const char* NomFichier)
{
	CChargeurFichierTexte	Chargeur;
 
	return Chargeur.Charger(NomFichier,'\t',FctnTraiterLigne,this);
}
et je pense qu'elle reçoit les informations du constructeur par copie (je n'en suis pas sûr) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
CFauxFrere::CFauxFrere(const CFauxFrere& Source)
:m_Code(Source.m_Code),m_Nom(Source.m_Nom),m_Nature(Source.m_Nature),m_Feminin(Source.m_Feminin),m_Pluriel(Source.m_Pluriel),m_Descriptif(Source.m_Descriptif),m_Definition(Source.m_Definition)
{
}
Voici la déclaration de la fonction TraiterLigne dans le header file :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
	bool		TraiterLigne(const CChargeurFichierTexte& Chargeur);
Edit : Je viens avec du nouveau :

Si le paramètre 1 est bien m_Code de type short, j'ai alors mis :

Ajouter(CFauxFrere((short)atol(Chargeur.Champs(0))

le message d'erreur est donc maintenant :

error C2665: 'CFauxFrere::CFauxFrere' : none of the 3 overloads can convert parameter 3 from type 'const char *'
Je pense que le paramètre est de type booléen, comment puis-je faire la même chose pour un booléen ?

Quand il parle de paramètre 1, s'est bien le champ 0 ?

Voilà, je vous remercie d'avance pour votre aide.

beegees