1
我有一個託管C++相當於C#空在託管C++
bool Test::TestStringNumber(String^ testData)
{
int len = testData->Length;
if(len > 0) return true;
}
正在使用相同的函數的C#
void Main()
{
Test t = new Test()
t.TestStringNumber(null);
}
但應用程序崩潰對象。調試我用C觀察期間++它作爲「未定義的值」
此外,我試圖與在C++代碼nullptr測試TESTDATA,並用於下面的代碼,但仍相同碰撞
if(testData == nullptr && String::IsNullOrEmpty(testData))
*的一種方法是在C++託管代碼中捕獲異常並返回;
你確定問題不是簡單的在C++中調用` - > Length`之前不檢查`null`嗎? – 2011-01-10 06:40:47