首页 > 后端开发 > C#.Net教程 > C# 通过引用调用

C# 通过引用调用

WBOY
发布: 2024-09-03 15:26:32
原创
1139 人浏览过

引用参数用于引用变量的内存位置。与需要新存储位置的值参数不同,引用参数表示与作为参数传递给方法的原始参数相同的内存位置。在C#中,我们使用关键字“ref”来声明引用参数。当我们将引用参数作为参数传递给 C# 中的函数时,我们传递的是对内存位置的引用而不是原始值。我们在 C# 中将此概念称为“按引用调用”。

语法

ref data_typevariable_name
登录后复制

其中 data_type 是变量名称为变量的数据类型。

C# 引用调用的工作原理

  • 每当需要调用一个接受参数的函数时,如果我们想将内存位置中变量的引用地址作为参数传递给函数,我们在 C# 中使用按引用调用。
  • 引用参数是接收内存中变量地址的参数。

示例

下面给出的是提到的示例:

示例#1

演示按引用调用的 C# 程序,其中我们计算数字的平方并在按引用调用函数之前和调用函数之后显示值。

代码:

using System;
//a namespace called program1 is defined
namespace program1
{
//a class called check is defined
class check
{
//a function is defined which takes reference variable as an argument
public void displaypower(ref double value)
{
//the square of the passed value is found using pow method
double power = Math.Pow(value,2);
//The resulting value is added to the value passed as reference
value = value + power;
Console.WriteLine("Value when the control is inside the function "+value);
}
//main method is called
static void Main(string[] args)
{
//a double variable is defined
double value = 5;
//an instance of the check class is defined which consists of the function taking reference parameter as an argument
check check1 = new check();
Console.WriteLine("Value before the function is called "+value);
//a function is called by reference
check1.displaypower(ref value);
Console.WriteLine("The value of the variable remains the same as inside the function because we are calling the function by reference " + value);
}
}
}
登录后复制

输出:

C# 通过引用调用

说明:

  • 在给定的程序中,我们定义命名空间“program1”。在这个命名空间内,我们有一个名为“check”的类,其中包含一个函数。该函数采用引用变量作为参数。
  • 该函数以传递的值作为参考,计算该值的平方并将其与实际值相加,然后显示结果值。

示例#2

演示按引用调用的 C# 程序,其中我们通过引用调用函数并将小写字母字符串作为引用参数传递,将给定的小写字母字符串转换为大写字母。

代码:

using System;
//a namespace called program1 is defined
namespace program1
{
//a class called check is defined
class check
{
//a function is defined which takes reference variable as an argument
public void displayupper(ref string value)
{
//ToUpper method is used to convert the string from small letters to capital letters
value = value.ToUpper();
Console.WriteLine("Value when the control is inside the function "+value);
}
//main method is called
static void Main(string[] args)
{
//a double variable is defined
string value = "shobha";
//an instance of the check class is defined which consists of the function taking reference parameter as an argument
check check1 = new check();
Console.WriteLine("Value before the function is called "+value);
//a function is called by reference
check1.displayupper(ref value);
Console.WriteLine("The value of the variable remains the same as inside the function because we are calling the function by reference " + value);
}
}
}
登录后复制

输出:

C# 通过引用调用

说明:

  • 在上面的程序中,我定义了一个名为“program1”的命名空间。然后,我在这个命名空间中定义一个名为“check”的类。在“check”类中,我定义了一个函数,该函数采用引用变量作为参数。
  • 该函数将传递的值作为引用,并使用 ToUpper() 方法将给定的小写字母字符串转换为大写字母。

推荐文章

这是 C# Call By Reference 的指南。在这里,我们通过工作和编程示例来讨论介绍。您还可以查看以下文章以了解更多信息 –

  1. C# 字典
  2. DataReader C#
  3. IEnumerable C#
  4. C# System.IO

以上是C# 通过引用调用的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板