【发布时间】:2013-05-30 19:56:39
【问题描述】:
我在 Delphi 语言中发现了一些我以前没有注意到的东西。考虑一个简单的记录和指向该记录的指针:
TRecord = record
value : double;
end;
PTRecord = ^TRecord;
现在声明一个 PTRecord 类型的变量:
var x : PTRecord;
并创造一些空间:
x := new (PTRecord);
我注意到我可以同时使用“.”来访问值字段。符号和 '^.'符号。因此,以下两行在操作上似乎是等效的,编译器不会抱怨并且运行时工作正常:
x.value := 4.5;
x^.value := 2.3;
我会认为'^。'是获取价值的正确且唯一的方法吗?我的问题是,是否可以使用更简单的点表示法,或者如果我不使用指针间接'^。'会遇到麻烦?也许这是众所周知的行为,但这是我第一次遇到它。
【问题讨论】:
标签: delphi