首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

关于as的用法?该怎么解决

2012-02-16 
关于as的用法?有如下代码:varmy_button:Tbuttonmy_object:Tobjectbegin(my_buttonasTobject)my_object:

关于as的用法?
有如下代码:
var
my_button:Tbutton;
my_object:Tobject;
begin
(my_button   as   Tobject);
my_object:=(my_button   as   Tobject);

end;
我想问的是:
(my_button   as   Tobject)与my_object:=(my_button   as   Tobject)有何区别.
根据书上讲:(my_button   as   Tobject)应该是返回值应该是my_button的一个引用,类型为Tobject;可是(my_button   as   Tobject)为什么能够访问Tbutton类的成员;
如可以写成这样:(my_button   as   Tobject).visiable:=true这是什么意思啊!
请高手给详细讲讲!谢谢!

[解决办法]
my_button as Tobject).visiable:=true
汗-_#!

AS就是类的强制类型转换,这样理解就是了!
[解决办法]
强制转换,告诉编译器,前面的对象当做后面的类型使用。这里程序员要小心,不要使用错误的类型,否则会出错,当然可以先用 IS 做一下判断。

IS的用法:检查前面的对象是否为后面的类型。
[解决办法]
猴子是动物,动物不是猴子.
[解决办法]
我想请教一个相关问题:

xxx as yyy和yyy(xxx)是不是完全等价的呢?

热点排行