C#类型转换运算符怎么用
这个li被转化为int类型了,为什么还能调用LimitedTnt中的TheValue属性呢?returnli.TheVakue这个语句返回到哪?最后输出的数据中为什么va...
这个li被转化为int类型了,为什么还能调用LimitedTnt中的TheValue属性呢?
return li.TheVakue这个语句返回到哪?
最后输出的数据中为什么value:100 而不是500? 展开
return li.TheVakue这个语句返回到哪?
最后输出的数据中为什么value:100 而不是500? 展开
2个回答
展开全部
更多追问追答
追问
LimitedTnt li =500;调用了那个方法后,根据return li 这句是不是要返回一个li的值呢?这个值是多少?还有这个x跟value和li=500有什么关系呢?如果您能帮我解答我加10分
追答
LimitedTnt li =500;这句调用了下面的方法。
public static implicit operator LimitedInt(int x){//参数x的值就是500
LimitedInt li=new LimitedInt();//这里创建一个LimitedInt的实例。
li.TheValue=x;//将500赋给TheValue属性。TheValue属性内部是使用_theValue字段。
//但由于TheValue的set代码有逻辑判断。
// _theValue=value>MaxValue?MaxValue:value;这段代码执行结果。_theValue的值为100,
return li;//返回li,这是LimitedInt的实例,TheValue为100;
}
该方法结束后。LimitedTnt li便指向了方法返回的对象。li.TheValue为100;
2014-12-14
展开全部
LimitedTnt li = 500
这一句就决定了实际值是100
由于LimitedTnt中_theValue是私有变量,实际是通过属性 TheVakue 进行读写操作的,定义时调用这个属性的set,由于超过最大值,自动赋成100
return li.TheVakue其实就是调用属性 TheVakue 的get
这一句就决定了实际值是100
由于LimitedTnt中_theValue是私有变量,实际是通过属性 TheVakue 进行读写操作的,定义时调用这个属性的set,由于超过最大值,自动赋成100
return li.TheVakue其实就是调用属性 TheVakue 的get
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询