【发布时间】:2017-03-22 10:42:41
【问题描述】:
我正在将一个 C# 项目转换为 Delphi,并且正在努力处理这个 C# 代码:
if (!String.IsNullOrEmpty(myItem.mySubItem?.Content) && (myItem.Quantity == 0) && (String.IsNullOrEmpty(myItem.Description)))
{
continue;
}
据我了解,Delphi 代码应如下所示:
if assigned(myItem.mySubItem) and (length(trim(myItem.mySubItem.Content)) > 0) and (myItem.Quantity = 0) and (length(trim(myItem.Description)) = 0) then begin
Continue;
end;
但我不能 100% 确定,因为从逻辑上讲它没有意义。不过那是另一回事了。我的问题是:我的 Delphi 代码是引用的 C# 代码的正确转换吗?
如果出错,正确的代码是什么?
【问题讨论】:
-
在你编译的时候有没有达到你想要的效果??这是最好的测试]
-
只是很好奇:为什么要转换为更“利基”产品?
-
我们很难在不知道什么类型的情况下提供建议。你为什么不把它剥离到你不明白的地方?想必你知道 C# 中的
&&和 Delphi 中的and是什么。所以从问题中删除它。也许您的问题是关于String.IsNullOrEmpty。您是否考虑过阅读文档来寻找答案? -
因为你似乎不想学习任何东西。您可以轻松阅读 C# 语言的文档,并能够自己理解 C# 代码。取而代之的是,您会寻找关于您的翻译是否正确的是/否答案。当您继续执行此任务时,您可能会一次又一次地这样做。我们不是翻译服务。您可以更有效地为自己解决这个问题,让我们给出是/否。然后你就会确信你做对了。最后,您将拥有更多知识并成为一名更好的程序员。
-
此外,您错过了问题中的大量信息,您没有尝试在问题中将其归结为关键点,您包含的代码过多.总而言之,我判断你还不够努力。毫无疑问,你不会喜欢这种观点,人们很少喜欢。但说真的,你相信你还没有能力看懂这段C#代码吗?真的吗?!