gpt4 book ai didi

function - 最佳实践 : function return value or byref output parameters?

转载 作者:行者123 更新时间:2023-12-01 06:57:43 25 4
gpt4 key购买 nike

我有一个名为 FindSpecificRowValue 的函数,它接收一个数据表并返回包含特定值的行号。如果未找到该值,我想向调用函数指出这一点。

是最好的方法:

  • 编写一个函数,如果未找到则返回 false,如果找到则返回 true,并将找到的行号作为 byref/输出参数,或
  • 编写一个返回 int 的函数,如果未找到行值,则返回 -999,如果找到,则返回行号?
  • 最佳答案

    就我个人而言,我不会使用该方法名称。

    我会改用两种方法:

    TryFindSpecificRow
    FindSpecificRow

    这将遵循 Int32.Parse/TryParse 的模式,在 C# 中它们可能如下所示:
    public static Boolean TryFindSpecificRow(DataTable table, out Int32 rowNumber)
    {
    if (row-can-be-found)
    {
    rowNumber = index-of-row-that-was-found;
    return true;
    }
    else
    {
    rowNumber = 0; // this value will not be used anyway
    return false;
    }
    }

    public static Int32 FindSpecificRow(DataTable table)
    {
    Int32 rowNumber;


    if (TryFindSpecificRow(table, out rowNumber))
    return rowNumber;
    else
    throw new RowNotFoundException(String.Format("Row {0} was not found", rowNumber));
    }

    编辑:更改为更适合问题。

    关于function - 最佳实践 : function return value or byref output parameters?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/246814/

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