加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

退出(1)或结果之间是否有任何区别:= 1;在德尔福退出?

发布时间:2020-12-15 09:39:11 所属栏目:大数据 来源:网络整理
导读:在Delphi中,您可以退出函数并为其提供一个返回值,该值与C/C++ / Java / C#等中的return关键字非常相似. Exit(1); 但是,我通常写这样的东西: Result := 1;Exit; 有没有理由选择一个而不是另一个? 解决方法 这两个变体在语义上是相同的,您可以在它们之间自由
在Delphi中,您可以退出函数并为其提供一个返回值,该值与C/C++ / Java / C#等中的return关键字非常相似.

Exit(1);

但是,我通常写这样的东西:

Result := 1;
Exit;

有没有理由选择一个而不是另一个?

解决方法

这两个变体在语义上是相同的,您可以在它们之间自由选择.

如果您需要在不支持Exit(< value>)语法的旧版本编译器上编译代码,那么显然您必须避免使用该变体.

我个人避免退出(< value>)只是因为我不喜欢有两种不同的方式来分配返回值.我讨厌这样的功能:

function FindValue(Value: Integer): Integer;
var
  i: Integer;
begin
  for i := 0 to Count - 1 do
    if Items[i] = Value then
      Exit(i);
  Result := -1;
end;

在这里,我们混合两种不同的方法.显然我们可以随时选择使用Exit(< value>),但后来我不能这样写这个函数:

function FindValue(Value: Integer): Integer;
begin
  for Result := 0 to Count - 1 do
    if Items[Result] = Value then
      Exit;
  Result := -1;
end;

在我看来,这是增加一个增强功能的时代之一,它引入了程序员的选择,但收益却很小.我希望退出(< value>)不要被引入.但是,正如我所说,这些是我个人的意见,我相信其他人有不同的看法.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读