Delphi 对象属性设置的问题

ZXH 2018-12-09 09:07:03
有些问题在学习时遇到了,通过查找资料还是不是很全,希望大牛们能帮忙解答下,感谢!

①属性property 设置时,发现数组类型的属性设置出现问题,也不能write,查找资料有很多说法,不甚明了。
②属性property 设置时,发现record类型的属性,设置了wirte也不能修改参数,属性只能只读。
③属性property 设置时,发现枚举型的属性总是会报错。

请大牛们稍微解释下delphi里,对象的属性接口时,有哪些特别容易忽略的点需要注意的,由于研究不深,请求帮助
...全文
200 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyhoo163 2018-12-10
  • 打赏
  • 举报
回复
属性是不能直接读写的,要再设定二个方法,分别读取和写稿属性的值。参考的例子很多。网上搜索一下。
BlueStorm 2018-12-09
  • 打赏
  • 举报
回复
property表明上看赋值的形式跟普通变量一样,但本质上来说,取值是通过一过function来取值, 赋值是通过一个procedure来进行赋值
  • 打赏
  • 举报
回复
你这3个问题, 只有第2个算是比较特殊的, record作为属性存在时, 不能针对记录里某一单独数值做修改, 需要先获取该record整体值的copy副本, 然后修改此副本后再吧整个record写回去:

var x:TR;
x := abc.propertyx;
x.a := xxx;
x.b := xxx;
abc.propertyx := x;
至于1和3, 我觉得是你的用法有问题, 建议你贴出你的代码来再看问题

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧