【发布时间】:2016-09-18 21:50:07
【问题描述】:
我如何确定一个数组项是对另一个数组的引用还是对另一个类型的项(例如 Single)的引用。
我正在研究这个,因为我想制作一个统一的代码,它将遍历动态多维数组的所有项,而不管数组的维数如何。
我需要这个来确定是否需要递归遍历表示内部维度的数组,或者我是否已经在最内部维度。
我认为我可能需要依赖 RTTI,但我必须承认到目前为止我还没有使用 RTTI 的经验。
【问题讨论】:
-
无法从变量本身发现这些信息。 stackoverflow.com/a/554185/33732 有关将类型信息传递给处理任意维度数组的函数的示例,请参阅 RTL 的
SetLength实现。 -
@RobKennedy 不像我最初寻找的那样在 Delphi 6 中,但在以后的 Delphi 版本中它是可能的,正如您在下面的回答中看到的那样。
标签: delphi multidimensional-array rtti delphi-6