implicit(C# 参考)
implicit 关键字用于声明隐式的用户定义类型转换运算符。
static implicit operator target_type { source_type identifier }
|
参数
- target_type
-
引用类型
- source_type
-
引用类型。
- identifier
-
Something。
-
隐式转换可以通过消除不必要的类型转换来提高源代码的可读性。但是,因为可以在程序员未指定的情况下发生隐式转换,因此必须注意防止令人不愉快的后果。一般情况下,隐式转换运算符应当从不引发异常并且从不丢失信息,以便可以在程序员不知晓的情况下安全使用它们。如果转换运算符不能满足那些条件,则应将其标记为 explicit。
有关更多信息,请参见使用转换运算符。
-
class MyType
{
public static implicit operator int(MyType m)
{
// code to convert from MyType to int
}
} -
MyType x;
// implicitly call MyType's MyType-to-int conversion operator
int i = x;