gpt4 book ai didi

c# - 请给我 C# 中隐式和显式类型转换的示例

转载 作者:行者123 更新时间:2023-11-30 13:20:27 25 4
gpt4 key购买 nike

谁能给我现实生活中的隐式类型转换示例。我知道隐式类型转换意味着从派生类到基类的转换,但我不知道如何在 c# 中的编码中显示。我不想用两行来定义它。我想定义一个完整的程序来显示 C# 中的隐式和显式类型转换。请帮助我。

问候

最佳答案

不,隐式类型转换只是意味着不需要在代码中显式的类型转换。

LINQ to XML 提供了很好的示例:

// Implicit conversion from string to XNamespace
XNamespace ns = "http://url.com";

XElement element = new XElement("foo", "bar");
// Explicit conversion of XElement to string
string value = (string) element;

这就是它们使用的方式 - 您创建您自己的显式或隐式转换运算符使用 MSDN 中显示的代码类型(explicitimplicit)。

简短、完整但毫无意义的示例:

class Foo
{
private readonly int value;

private Foo(int value)
{
this.value = value;
}

public static implicit operator Foo(int value)
{
return new Foo(value);
}

public static explicit operator int(Foo foo)
{
if (foo == null)
{
throw new ArgumentException("foo");
}
return foo.value;
}
}

class Test
{
static void Main(string[] args)
{
int x = 10;
Foo foo = x;
int y = (int) foo;
}
}

关于c# - 请给我 C# 中隐式和显式类型转换的示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7968521/

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