J'ai un problème de typage
bonjour:D
J'ai un problème de typage : J'ai déclaré :
Code:
1 2 3 4
| unsigned long ulStart = 0;
System::Int32^ pStatus;
bool bWasMoved = false;
bool bIsMoved = false; |
je veux allouer pStatus à un type CAnalysedWordM par l'instruction :
Code:
pAnalysedWord->iExcluded = pStatus;
mais j'ai un 1° message sur la ligne
Code:
pListAnalysedWord = gcnew List<CAnalysedWordM^>();
qui est :
Code:
1 2 3 4 5 6 7 8 9 10 11
| 1>..\..\..\..\Linguistic\ParserManager\src\ParserManager.cpp(702): error C2440: '='*: impossible de convertir de 'System::Collections::Generic::List<T> ^' en 'System::Collections::Generic::List<T> ^'
1> with
1> [
1> T=SpecificationLoader::CAnalysedWordM ^
1> ]
1> and
1> [
1> T=SpecificationLoader::stAnalysedWordM ^
1> ]
1> Aucun opérateur de conversion défini par l'utilisateur disponible, ou
1> Les types pointés n'ont aucun rapport entre eux*; conversion nécessitant reinterpret_cast, cast de style C ou cast de style fonction |
CAnalysedWordM est défini par
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| public ref class CAnalysedWordM
{
public:
unsigned long long ullWordID; // Identifiant du Word dans la base de données
unsigned long long ullLemmaID; // Identifiant du Lemma dans la base de données
System::String^ wsWord; // Texte du mot
System::String^ wsLemma; // Texte du lemma
enPOSM POS; // Part Of Speech du lemma (et du mot)
enGenderM iGender; // Genre du lemma (et du mot)
enPersM iPers; // la Personne du mot
enNbrM iNbr; // le nombre du mot
System::String^ wsPronunciation; // Prononciation du lemma (pour le japonais)
System::Int32^ iExcluded; // La valeur du lemma est important ou non
int ValueOfWord; // la valeur du mot pour l'alignement
unsigned long ulStart; // Position du premier caractère du mot dans le segment
unsigned long ulLength; // Longueur du mot (les espaces sont exclus)
int iWordOccurence; // occurence du mot dans la BD
CAnalysedWordM()
{
}
~CAnalysedWordM()
{;}
}; |
et l'allocation me sort un message d'erreur :
Code:
1 2 3
| 1>..\..\..\..\Linguistic\ParserManager\src\ParserManager.cpp(721): error C2440: '='*: impossible de convertir de 'System::Int32 ^' en 'int'
1> Aucun opérateur de conversion défini par l'utilisateur disponible, ou
1> Aucun contexte dans lequel cette conversion est possible |
celui qui m'orientera sera ;ccool: