`

C#中可选参数和命名参数的定义及使用

    博客分类:
  • C#
 
阅读更多
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 可选参数和命名参数
{
    class Program
    {
        static void Main(string[] args)
        {
            (new Program()).run();
        }

        private void run()
        {
            Display(6);                 // 调用有 1 个参数的方法
            Display(a: 99);             // 调用有 1 个参数的方法
            Display(aaaa: 99);          // 调用有 2 个参数的方法,命名参数 aaaa 限制,
            Display(6, 8);              // 调用有 2 个参数的方法
            Display(6, 8, 10);          // 调用有 3 个参数的方法
            Display(6, b: 9);           // 调用有 2 个参数的方法,选择最贴近的
            Display(6, c: 10);          // 调用有 3 个参数的方法,命名参数 c 限制
            Display(6, c: 12, b: 8);    // 调用有 3 个参数的方法
                                        // 方法中 a 为必选参数,位置不能改变
            Display(c: 12, a: 8, b: 10);    // 调用有 3 个参数的方法
                                            // 命名参数可按照不同顺序传递实参
        }

        public void Display(int a)
        {
            Console.WriteLine("调用有 1 个参数的方法!");
            Console.WriteLine("a = {0}", a);
            Console.WriteLine();
        }

        public void Display(int aaaa = 99, double b = 2)    // aaaa 和 b 均为可选参数
        {
            Console.WriteLine("调用有 2 个参数的方法!");
            Console.WriteLine("a = {0}, b = {1}", aaaa, b);
            Console.WriteLine();
        }

        public void Display(int a, double b = 2, int c = 6) // b、c 是可选参数
                                                            // a 是必选参数
        {
            Console.WriteLine("调用有 3 个参数的方法!");
            Console.WriteLine("a = {0}, b = {1}, c = {2}", a, b, c);
            Console.WriteLine();
        }
    }
}

 运行后结果如下:

分享到:
评论

相关推荐

    C#参数使用练习笔记(完全学习笔记)

    C#允许定义可选参数,为函数提供默认值,使得在调用时可以省略某些参数。可选参数需放在非可选参数之后,并通过等号(=)指定默认值: ```csharp public void OptionalParams(int required, int optional = 0) { /...

    c# 可选参数、命名参数

    1. **可为方法和有参属性指定默认值**:这意味着不仅可以在方法中,也可以在带有参数的属性(如计算属性)中使用可选参数和命名参数。 2. **有默认值的参数必须定义在没有默认值的参数之后**:这是为了确保编译器能...

    C#课件 函数 — 参数

    在C#编程中,函数是组织代码的基本单元,它们允许我们将特定任务封装为可重复使用的模块。本节将深入探讨函数中的一个关键概念——参数,以及如何...在实际编程中,合理地定义和使用参数可以大大提高代码的质量和效率。

    c#语言定义文档 合并版

    参数列表可以是值类型或引用类型,可以是可选参数或命名参数。 十五、方法体和局部变量 C#语言的方法体是方法的实现部分,用于定义方法的行为。方法体可以包含局部变量,局部变量是方法体中的临时变量。

    C#应用处理传入参数 - 开源研究

    三、命名参数与可选参数 C#允许在调用函数时使用命名参数,以便更清晰地表明参数意图。可选参数允许函数接受未提供的参数,它们会使用预设的默认值。 ```csharp void ExampleFunction(int required, int? optional ...

    深入C# 4.0 新特性dynamic、可选参数、命名参数的详细介绍

    综上所述,C# 4.0的`dynamic`、可选参数和命名参数等新特性极大地扩展了C#的功能,使其更加适应动态编程环境,同时提高了代码的可读性和灵活性。这些特性对于与动态语言的互操作,以及在复杂方法签名和参数管理中都...

    如何使用离散值参数筛选水晶报表源程序实例,C#.net源代码编写,

    3. **定义参数值**:在参数属性中,找到“可用值”选项,这里可以指定用户可选的离散值。可以手动输入这些值,或者通过SQL查询从数据库获取。例如,输入(1, "周一"), (2, "周二"), ..., (7, "周日"),这样用户在运行...

    C#可选参数的相关使用

    在C#编程语言中,可选参数...总之,C#中的可选参数和命名参数是强大的工具,它们增强了方法调用的灵活性,使得开发者可以更方便地根据需求调整参数。同时,理解并正确使用这些特性对于编写高效、易用的C#代码至关重要。

    CLR.via.C#.(中文第3版)(自制详细书签)Part2

    9.1 可选参数和命名参数 9.1.1 规则和原则 9.1.2 DefaultParameterValueAttribute和OptionalAttribute 9.2 隐式类型的局部变量 9.3 以传引用的方式向方法传递参数 9.4 向方法传递可变数量的参数 9.5 参数和...

    WPF程序中RDLC报表的使用及参数传递

    5. 可选:导出报表到不同格式。 理解并掌握这些知识点,将使你在开发具有强大报表功能的WPF应用时游刃有余。通过实践和调整,你可以创建出满足业务需求的定制化报表,提升应用程序的用户体验。

    C#选号系统

    创建Random对象时,通常会传递一个种子值(可选)以确定随机数序列的起始点。如果不提供种子,系统将自动使用当前时间作为种子,确保每次运行时都能得到不同的随机数序列。 创建选号系统的第一步是实例化Random对象...

    C#4.0新特性中文帮助文档

    2. **可选参数和命名参数** C#4.0允许方法接受可选参数,这样调用者可以不提供所有参数的值,而只提供部分。同时,命名参数允许在调用方法时按参数名指定值,而非按位置顺序,增强了代码的可读性。 3. **多态协变...

    C#4.0权威指南电子书

    在C# 4.0中,微软引入了多个关键改进和新特性,如动态类型、多语言互操作性(特别是与VB.NET和Python的互操作)、可选参数和命名参数、协程(通过Task Parallel Library实现)以及改进的异步编程模型等。这些变化...

    C#/asp.net 命名规范文档

    C#/ASP.NET编程中,命名规范是代码可读性和维护性的重要组成部分。以下是一些关键的命名规则: 1. **类命名**: - 应遵循Pascal规则,即首字母大写,如`ClassName`。 - 类名应反映其功能,使用名词或名词短语。 ...

    c#窗体设计登录系统

    在 C# 中,常量定义使用 const 关键字。常量的值不能被修改。正确的常量定义是 Const double e=2.7; 5. 属性分类 在 .NET 中,属性可以分为三种:只读属性、只写属性和读写属性。不可读不可写的属性不在这三种分类...

    c#.net函数和方法集

    它们可以接受输入参数(如果需要),并返回结果(可选)。理解函数和方法的关键在于了解其结构、创建过程以及如何调用它们。 1. **定义函数/方法**: 在C#中,我们使用`void`或特定类型(如`int`, `string`等)来...

    C#4.0语言规范 C#4.0语言规范C#4.0语言规范

    同时,可以为方法定义可选参数,使得调用者可以选择提供部分或全部参数值。 4. **多态委托**(covariance 和 contravariance):C# 4.0支持委托和泛型接口的协变和逆变,提高了代码的复用性和灵活性。这意味着派生...

    C#的方法的学习及理解

    在C#中,调用方法非常直观,只需使用方法名和括号内的参数即可。以下是如何在`Main`方法中调用`FindMax`的例子: ```csharp int a = 100; int b = 200; int ret; NumberManipulator n = new NumberManipulator(); ...

Global site tag (gtag.js) - Google Analytics