我有一个托管C++对象
bool Test::TestStringNumber(String^ testData)
{
int len = testData->Length;
if(len > 0) return true;
}
Run Code Online (Sandbox Code Playgroud)
我在C#中使用相同的功能
void Main()
{
Test t = new Test()
t.TestStringNumber(null);
}
Run Code Online (Sandbox Code Playgroud)
但应用程序崩溃.在调试期间,我在C++中观察到它是'未定义的值'
另外我试图用c ++代码中的nullptr测试testData,并使用下面的代码,但仍然崩溃
if( testData == nullptr && String::IsNullOrEmpty( testData ))
Run Code Online (Sandbox Code Playgroud)
*一种方法是捕获C++托管代码中的异常并返回;
bool Test::TestStringNumber(String^ testData)
{
return !String::IsNullOrEmpty( testData );
}
Run Code Online (Sandbox Code Playgroud)
应该工作得很好吗?不是我在你的代码中看到了这一点吗?
| 归档时间: |
|
| 查看次数: |
4679 次 |
| 最近记录: |