C# 允许程序员在类或结构上声明转换,以便类或结构与其他类或结构或者基本类型进行相互转换。转换的定义方法类似于运算符,并根据它们所转换到的类型命名。要转换的类型参数或转换结果的类型必须是(不能两者同时都是)包含类型。
| C# | 复制代码 |
|---|---|
class SampleClass
{
public static explicit operator SampleClass(int i)
{
SampleClass temp = new SampleClass();
// code to convert from int to SampleClass...
return temp;
}
}
| |
转换运算符概述
转换运算符具有以下特点:
-
声明为 implicit 的转换在需要时自动进行。
-
声明为 explicit 的转换需要调用强制转换。
-
所有转换都必须是 static 转换。