gpt4 book ai didi

c# - 将空参数传递给 C# 方法

转载 作者:IT王子 更新时间:2023-10-29 04:11:49 25 4
gpt4 key购买 nike

有没有办法将空参数传递给 C# 方法(类似于 C++ 中的空参数)?

例如:

是否可以将以下 c++ 函数转换为 C# 方法:

private void Example(int* arg1, int* arg2)
{
if(arg1 == null)
{
//do something
}
if(arg2 == null)
{
//do something else
}
}

最佳答案

是的。 .NET 中有两种类型:引用类型和值类型。

引用类型(通常是类)总是由引用引用,因此它们无需任何额外工作即可支持 null。这意味着如果变量的类型是引用类型,则该变量自动成为引用。

默认情况下,值类型(例如 int)没有 null 的概念。但是,它们有一个包装器,称为 Nullable。这使您能够封装不可为 null 的值类型并包含 null 信息。

虽然用法略有不同。

// Both of these types mean the same thing, the ? is just C# shorthand.
private void Example(int? arg1, Nullable<int> arg2)
{
if (arg1.HasValue)
DoSomething();

arg1 = null; // Valid.
arg1 = 123; // Also valid.

DoSomethingWithInt(arg1); // NOT valid!
DoSomethingWithInt(arg1.Value); // Valid.
}

关于c# - 将空参数传递给 C# 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/271588/

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