VB Property Get/Let怎麼用 50
如题,我看了专门的编程书和网上教程还是不懂呢,所以:请说明VBPropertyGet/PropertyLet的意思,参考书说一个「返回」另一个是「读取」,不明白这两个词。...
如题,我看了专门的编程书和网上教程还是不懂呢,所以:
请说明 VB Property Get/Property Let 的意思,参考书说一个「返回」另一个是「读取」,不明白这两个词。还有就是怎样去记住哪个是哪个?我经常二选一都搞浑了啦~
请用一个生活实例,配以一段代码,说明最基本的Property Get 和Property Let 怎麼使用。
感激不尽~ 展开
请说明 VB Property Get/Property Let 的意思,参考书说一个「返回」另一个是「读取」,不明白这两个词。还有就是怎样去记住哪个是哪个?我经常二选一都搞浑了啦~
请用一个生活实例,配以一段代码,说明最基本的Property Get 和Property Let 怎麼使用。
感激不尽~ 展开
展开全部
这就是面向对象里面的属性的封装了,虽然通常我们认为VB是伪面向对象,但是封装这个概念还是有的get是得到值 let是给属性赋值
Private re_Text As String
Public Property Let Text(ByVal NewValue As String)
re_Text = NewValue
End Property
Public Property Get Text() As String
Text = re_Text
End Property
re_Text这个属性是私有的,外界无法访问,代码给出外界访问属性Text 分别具有Get和Let
外界通过Text的Get可以读取到re_Text的值 同样通过Text的Let可以给re_Text赋值,如果只有Get 说明re_Text
属性为只读,相反只有Let为只写不可读 外界用法 a.Text="abc" 执行完这句 a的私有成员re_Text的值已经是“abc”了,如果调试代码,你会发现这个过程中代码走进了Let里面(扩展:往往编程者会在Let代码段里做点其他同步的事,不如把sexid的let成1,那么同时sexname赋值成“男”实现性别编码和性别名称这两个属性时刻保持一致),同样
string b=a.Text 执行这个代码会走到Get代码段里
追问
有点太深奥了,这段代码初衷的目的是甚麼呢?可以举个生活化的应用例子吗?
而re_Text 跟Text 各自有甚麼意义呢?
>「Get 得到值」 ,那麼在Property Get 里面怎麼叫得到值呢?
追答
不好意思,才看到你的追问
这是面向对象思想里的封装,比如你写一个动态库(fx.dll) 里面的一个类cls 有个属性x 你希望外界引用你动态库的时候可以取到x的值 却不能改变x的值,如果你给x的访问域为public 那么引用者不但可以读,还可以写,如果你给private就不能读也不能写,那么你就需要对private x 进行封装
private x as string
Public Property Get x1() As String
x1= x
End Property
这样外界可以通过访问fx.cls.x1得到x的值 却没有办法更改x
还需要知道更多直接q我123360495
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询