CnPack Open Source Projects - 修改对象中非读方法的只读属性
  Home Page News Downloads Nightly Build Documents Donation Forum Credits 简体中文
 Latest Releases

 
CnWizards 1.6.0.1246
[2025-03-28]

 
CnVCL 20250328
[2025-03-28]
  Nightly Build
  CnWizards Timeline
 Project Links
 

 
CnPack at GitHub
Use GitHub
 Visitors
Today Visitors: 208
Today Pages: 1254
Total Visitors: 5415078
Total Pages: 21988705
Since: 2003-09-01
 
修改对象中非读方法的只读属性
 
CnPack Open Source Projects 2007-01-24 13:01:15

可以修改对象的只读属性?
作者:小冬
2007-01-24
(转贴请保持完整并且注明作者和出处)

哈,最近发现一个修改只读属性的方法,就是通过指针。

不过还有条件,只能修改变量方式的属性,如:

property ReadOnlyProperty: string read FReadOnlyProperty;

如果是读方法的属性则不能修改:

property ReadOnlyByFunc: string read GetReadOnlyByFunc;

例:

TMyClass = class
  FProA: string;
public
  property ProA: string read FProA;
end;

var
  pp: ^string;    //定义指针
begin
  PP := @TestClass.ProA;    //TestClass 是 TMyClass的实例
  pp^ := 'This readonly property was modified!';
end;


其他类型的属性也可以噢。



Page hits: 9404 times
From: CnPack Open Source Projects

Previous | UpNext

Links:
如何在没有DCP的情况下调用BPL里的对象方法
在Delphi XE中使用go语言的defer方法
在Delphi XE中使用go语言的并发编程方法之Demo3
在Delphi XE中使用go语言的并发编程方法之Demo2
在Delphi XE中使用go语言的并发编程方法

(C)Copyright 2001-2025 CnPack Develop Team  Site author: JingYu Zhou