命名参数中的 argument_name 和 argument_value?

发布于 2025-01-10 16:20:20 字数 1048 浏览 0 评论 0原文

最近我一直在讨论有关 C# 中方法的参数的主题。阅读 表达式< /a> 我看到以下摘录,其中指出:

argument_list 由一个或多个参数组成,参数之间用逗号分隔。每个参数由一个可选的 argument_name 和后跟一个 argument_value 组成。具有 argument_name 的参数称为命名参数,而没有 argument_name 的参数是位置参数。

代码示例 - 位置参数:

    public static void Main()
    {
        // two positional arguments in the argument-list
        CustomStaticMethod(4, "hello"); 
    }

    public static void CustomStaticMethod(int num, string word)
    {
        // ...
    }

代码示例 - 命名参数:

    public static void Main()
    {
        // two named arguments in the argument-list
        CustomStaticMethod(word: "hello", num: 4);
    }

    public static void CustomStaticMethod(int num, string word)
    {
        // ...
    }

C# 文档摘录中关于命名参数的 argument_nameargument_value 意味着什么?

Recently I have been covering the topic about arguments in C# in regards to a method. While reading Expressions I came across the following excerpt which states:

An argument_list consists of one or more arguments, separated by commas. Each argument consists of an optional argument_name followed by an argument_value. An argument with an argument_name is referred to as a named argument, whereas an argument without an argument_name is a positional argument.

Code Example - Positional Arguments:

    public static void Main()
    {
        // two positional arguments in the argument-list
        CustomStaticMethod(4, "hello"); 
    }

    public static void CustomStaticMethod(int num, string word)
    {
        // ...
    }

Code Example - Named Arguments:

    public static void Main()
    {
        // two named arguments in the argument-list
        CustomStaticMethod(word: "hello", num: 4);
    }

    public static void CustomStaticMethod(int num, string word)
    {
        // ...
    }

What does the C# documentation excerpt mean by an argument_name and argument_value in regards to a named argument?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

淡笑忘祈一世凡恋 2025-01-17 16:20:20

在您的代码中: CustomStaticMethod(word: "hello", num: 4);

当您以 : 格式提供参数时,此参数是一个命名参数

其中:

  • word 是参数名称,
  • "hello" 是参数值。

现在考虑这种情况:

public static void CustomStaticMethod(string foo, int num, string bar) { 
    //...
}

您可以像这样混合位置参数和命名参数:

public static void Main() {
    CustomStaticMethod(bar: "hello", 4, foo: "world"); 
}

使用命名参数可以让您提供参数,而无需记住每个参数的确切位置。如果要调用的方法有很长的参数列表,这尤其有用。

有关详细信息,您可以阅读 官方文档

In your code: CustomStaticMethod(word: "hello", num: 4);

When you supply an argument in <name>: <value> format, this argument is a named argument.

Where:

  • word is argument name,
  • "hello" is argument value.

Now consider this case:

public static void CustomStaticMethod(string foo, int num, string bar) { 
    //...
}

You can mix positional argument and named argument like this:

public static void Main() {
    CustomStaticMethod(bar: "hello", 4, foo: "world"); 
}

Using named argument let you supply arguments without memorise the exact position of each argument. This is especially useful if the method to call has a long parameter list.

For more information you can read from the official doc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文