gpt4 book ai didi

c# - 等同于托管 C++ 中的 C# null

转载 作者:太空宇宙 更新时间:2023-11-03 19:31:23 25 4
gpt4 key购买 nike

我有一个托管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++ 托管代码中捕获异常并返回;

最佳答案

bool Test::TestStringNumber(String^ testData)
{
return !String::IsNullOrEmpty( testData );
}

应该工作得很好吗?不是说我在您的代码中看到了重点吗?

关于c# - 等同于托管 C++ 中的 C# null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4644297/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com