C#能在一个类中创建另一个类的实例吗
比如publicclassConvClass1{publicstaticimplicitoperatorConvClass2(ConvClass1op1){}}publi...
比如
public class ConvClass1
{
public static implicit operator ConvClass2(ConvClass1 op1)
{
}
}
public class ConvClass2
{
public static explicit operator ConvClass1(ConvClass2 op1)
{
}
}
我看着不像是创建实例。。还有关键字implicit explicit 和 operator是什么意思??
多谢多谢 展开
public class ConvClass1
{
public static implicit operator ConvClass2(ConvClass1 op1)
{
}
}
public class ConvClass2
{
public static explicit operator ConvClass1(ConvClass2 op1)
{
}
}
我看着不像是创建实例。。还有关键字implicit explicit 和 operator是什么意思??
多谢多谢 展开
展开全部
operator 关键字用于声明运算符。
explicit 关键字用于声明必须使用强制转换来调用的用户定义的类型转换运算符。
implicit 关键字用于声明隐式的用户定义类型转换运算符。
就题主的例子而言,ConvClass1 类型对象是可以隐式转换成 ConvClass2 类型对象的,例如:
ConvClass1 c1 = new ConvClass1();
ConvClass2 c2 = c1;
而 ConvClass2 转成 ConvClass1 则必须强转,例如:
ConvClass2 c2 = new ConvClass2();
ConvClass1 c1 = (ConvClass1)c2;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询