gpt4 book ai didi

delphi - 如何重新创建一个检索对象最高元素的函数?

转载 作者:行者123 更新时间:2023-12-03 18:12:34 25 4
gpt4 key购买 nike

我的计划是制作一个函数来检索对象的最高元素,可以说是数组的上限。换句话说,我试图获取函数 High() 的代码。

到目前为止我尝试了什么:

 function High2(var X):integer;
begin
Result:=Pbyte(Cardinal(@X)-1)^-1;
end;

上面的函数应该读取对象(数组/字符串)中第一个元素的位置之前的值(长度)并将其减 1 返回。但是无论是静态数组还是动态数组类型,它都不会检索到正确的结果.

如何在 Pascal 中重新创建 High() 函数?

最佳答案

High()(和 Low())函数被称为“标准函数”,这意味着它们是编译器固有的。与 Write 和 Writeln 一样,它们并不真正作为普通的 Pascal 函数声明存在。编译器确保它们在“系统”单元范围内只是为了方便,并允许在其他范围内使用相同名称的函数。这还允许您通过使用 System.High() 显式引用系统单元版本来限定它们。由于它们是固有的,编译器将自动为所考虑的类型生成正确的代码序列。这也意味着试图复制它们的全部功能几乎是不可能的。坚持使用内在的标准函数。

关于delphi - 如何重新创建一个检索对象最高元素的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1481965/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com