我的编程空间,编程开发者的网络收藏夹
学习永远不晚

C#中的out参数、ref参数和params可变参数用法介绍

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

C#中的out参数、ref参数和params可变参数用法介绍

out参数:

out关键字 通过引用来传递参数,在定义方法和调用方法的时候都必须使用out关键字

简单来讲out可以用来返回多个参数类型。

       static void Main(string[] args)
        {
            string s = "123";
            int result;
            bool b = MyTest(s,out result);
        }
        public static bool MyTest(string s, out int result)
        {
            bool isTrue;
            try {
                result = Convert.ToInt32(s);//使用out参数必须在定义方法内进行赋值
                isTrue = true;
            }
            catch
            {
                isTrue = false;
                result = 0;
            }
            return isTrue;
        }

该方法返回类型为bool类型,在返回bool类型的同时也顺带返回了int类型的result变量。即,返回两种变量类型。

ref参数

ref参数在定义的方法内对其进行处理,再将结果返回,定义方法无需多余的返回类型。

ref参数和out 的的区别 out必须在定义方法内部赋值,ref必须在调用方法之前为其实参赋值。

        static void Main(string[] args)
        {
            //使用ref参数来交换两个数字的值
            int a = 1;
            int b = 2;
            Change(ref a, ref b);
            Console.WriteLine("a{0},b{1}",a,b);
            Console.ReadKey();
        }
        public static void Change(ref int a, ref int b)
        {
            int temp;
            temp = a;
            a = b;
            b = temp;
        }

注意 在定义方法的时候 可以不需要返回值啦~

params可变参数

将实参列表中与可变参数数组类型一致的元素都当做数组的元素去处理。

params可变参数必须是形参的最后一个元素。

        static void Main(string[] args)
        {
            //方法一:可以使用数组传参
            //int[] scores = {22,11,33};
            //test("张三",11,scores)
            //方法二:也可以直接在调用的时候使用和数组类型一致的元素
            test ("张三", 100, 22, 11, 33);
            Console.ReadKey();
        }
        /// <summary>
        /// params测试函数,计算一个同学的总成绩
        /// 在params使用的时候必须将其放在最后一个参数,如下所示!
        /// </summary>
        /// <param name="name">姓名</param>
        /// <param name="number">学号</param>
        /// <param name="s">可变数组成绩</param>
        public static void test(string name, int number, params int[] s)
        {
            int sum = 0;
            for (int i = 0; i < s.Length; i++)
            {
                sum = sum + s[i];
            }
            Console.WriteLine("{0}的学号是{1},总分为{2}", name, number, sum);
        }

到此这篇关于C#中的out参数、ref参数和params可变参数用法的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

C#中的out参数、ref参数和params可变参数用法介绍

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

C++ 函数的默认参数和可变参数详解

c++++ 默认参数允许为函数参数设置默认值,而在可变参数中,可以为函数提供任意数量的参数。具体而言:默认参数:允许在函数声明时为参数指定默认值,在调用时如果没有提供值则使用默认值。可变参数:使用 ... 表示,允许函数接受任意数量的参数,
C++ 函数的默认参数和可变参数详解
2024-04-19

C++ 函数默认参数和可变参数在异步编程中的用法

在异步编程中,c++++ 函数的默认参数和可变参数特性可以简化回调函数:默认参数允许省略可选参数,减少编写和使用回调函数的复杂性。可变参数允许向函数传递任意数量的参数,方便传递动态参数列表。C++ 函数默认参数和可变参数在异步编程中的用法
C++ 函数默认参数和可变参数在异步编程中的用法
2024-04-23

浅析C/C++中的可变参数与默认参数

C支持可变参数的函数,这里的意思是C支持函数带有可变数量的参数,最常见的例子就是我们十分熟悉的printf()系列函数。我们还知道在函数调用时参数是自右向左压栈的
2022-11-15

如何优化 C++ 函数中默认参数和可变参数的使用

优化 c++++ 默认和可变参数函数:默认参数:允许函数使用默认值,减少冗余。将默认参数放在最后以提高可读性。使用 constexpr 默认参数以减少开销。使用结构化绑定以提高复杂默认参数的可读性。可变参数:允许函数接受数量不定的参数。尽量
如何优化 C++ 函数中默认参数和可变参数的使用
2024-04-20

C/C++可变参数的使用

可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
C/C++可变参数的使用
2022-11-15

C++ 函数默认参数和可变参数在模板编程中的特殊用法

c++++ 中针对默认参数和可变参数在模板编程中的特殊用法:默认参数允许函数在没有指定参数时使用默认值,从而实现函数重载的泛型化。可变参数允许函数接收任意数量的参数,实现了代码的通用性,可以用于处理任意数量的参数的函数或泛型化容器。实战案例
C++ 函数默认参数和可变参数在模板编程中的特殊用法
2024-04-22

C++ 函数默认参数和可变参数在 Lambda 表达式中的应用

lambda 表达式中,默认参数允许指定参数默认值,而可变参数则允许传递数量不定的参数。默认参数应紧随必选参数,而可变参数必须是函数参数中最后一个。这些功能可以简化代码并提高可读性,例如在处理字符串列表时添加前缀和后缀。C++ 函数默认参数
C++ 函数默认参数和可变参数在 Lambda 表达式中的应用
2024-04-22

C++ 函数默认参数和可变参数在泛型编程中的作用

c++++ 中的默认参数和可变参数在泛型编程中发挥着至关重要的作用:默认参数允许函数在调用时指定可选参数,便于处理不同类型和默认值的元素。可变参数允许函数接受任意数量的参数,便于处理可变数量的元素。实战案例中,泛型容器(例如 vector
C++ 函数默认参数和可变参数在泛型编程中的作用
2024-04-22

简单介绍Python函数中可变参数的使用方式

Python函数可变参数的使用方法简介在Python中,可变参数允许我们定义一个接受任意数量参数的函数。这在一些情况下非常有用,特别是在我们不确定函数会接受多少个参数时。本文将介绍Python中可变参数的使用方法,并提供具体的代码示例。
简单介绍Python函数中可变参数的使用方式
2024-02-02

C# MethodInfo 调用有 Out 参数的方法

要使用MethodInfo来调用具有Out参数的方法,您可以使用Invoke方法来调用方法并传递参数。请注意,Out参数必须是对象数组,以便在调用方法后检索值。下面是一个示例代码:```csharpusing System;using Sy
2023-10-12

Linux中Nmap的用法及参数介绍

这篇文章主要讲解了“Linux中Nmap的用法及参数介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中Nmap的用法及参数介绍”吧!扫描器是一种能够自动检测主机安全性弱点的程序。
2023-06-13

C#中命名参数和可选参数怎么应用

这篇“C#中命名参数和可选参数怎么应用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#中命名参数和可选参数怎么应用”文章吧
2023-06-30

C/C++中可变参数的用法详细解析

可变参数的使用方法远远不止以下介绍的几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
2022-11-15

C++ 函数默认参数和可变参数的内存管理剖析

默认参数和可变参数的内存管理:默认参数:在函数栈帧中分配内存,大小为其类型的字节数。可变参数:在堆栈帧的尾部分配内存,大小由可变参数数量决定:sizeof(void ) (传入参数数量 + 1)C++ 函数默认参数和可变参数的内存管理剖析
C++ 函数默认参数和可变参数的内存管理剖析
2024-04-19

探究 C++ 函数默认参数和可变参数的底层实现

默认参数: 在函数定义中指定参数默认值,使用常数预定义;可变参数: 使用省略号表示,编译为指向数组的指针,打包传入参数,遍历数组访问参数。探究 C++ 函数默认参数和可变参数的底层实现默认参数默认参数是一种可以在函数定义中指定参数默认值
探究 C++ 函数默认参数和可变参数的底层实现
2024-04-22

C++ 函数默认参数和可变参数在面向对象编程中的应用

c++++ 中可应用于面向对象编程的默认参数和可变参数,提升代码可读性和重用性:默认参数:允许为函数参数指定默认值,缺省时使用;可变参数:支持函数处理不定数量的参数,提升代码灵活性。C++ 函数默认参数和可变参数在面向对象编程中的应用默认
C++ 函数默认参数和可变参数在面向对象编程中的应用
2024-04-23

C++ 函数默认参数和可变参数在不同编译器中的差异

默认参数允许函数使用预设值,c++++11 及以上版本支持,在 visual studio 中使用不同语法。可变参数允许函数接收不定参数,c++11 及以上版本支持,在 visual studio 中不支持,gcc 中需要使用特殊语法。C+
C++ 函数默认参数和可变参数在不同编译器中的差异
2024-04-23

C++ 函数中引用参数和指针参数的高级用法

c++++ 函数中的引用参数(本质为变量别名,修改引用修改原始变量)和指针参数(存储原始变量的内存地址,通过解引用指针修改变量)在传递和修改变量时有着不同的用法。引用参数常用于修改原始变量(尤其是大型结构体),传递给构造函数或赋值运算符时避
C++ 函数中引用参数和指针参数的高级用法
2024-04-21

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录