1
i avoir un géré objet C++équivalent à C# null managé C++
bool Test::TestStringNumber(String^ testData)
{
int len = testData->Length;
if(len > 0) return true;
}
me sers même fonction en C#
void Main()
{
Test t = new Test()
t.TestStringNumber(null);
}
mais plantage de l'application. pendant le débogage i observé en C++, il se présente comme « valeur indéfinie »
Alsó j'ai essayé de tester TestData avec nullptr en C++ code, et utilisé le code suivant, mais même accident
if(testData == nullptr && String::IsNullOrEmpty(testData))
* Une façon est de attraper l'exception dans le code géré C++ et retourner;
Etes-vous sûr que le problème n'est pas simplement que dans le C++ vous ne le vérifiez pas pour 'null' avant d'appeler' -> Length'? –
ouais je fais le même code pour vérifier nullptr – Kasma
Appelez-vous 't.TestStringNumber (null);' en C# ou C++? Si c'est C#, vous pouvez vérifier 'nullptr'; Si c'est C++, vous devez vérifier null. – Gabe