Eine brutale Möglichkeit, die Größe(n) eines dynamisch mehrdimensionalen Arrays zu messen, wäre folgender:
Delphi-Quellcode:
function CntArrDimensions( const Arr: Pointer ): String;
begin
try
Result := '0..' + IntToStr( pCardinal( Cardinal(Arr^) - 4 )^ - 1 ) + ' ' + CntArrDimensions( Pointer( Cardinal(Arr^) ) );
except
end;
end;
// Testaufruf
var
Test: Array of Array of Array of Byte;
begin
SetLength( Test, 10, 20, 30 );
ShowMessage( CntArrDimensions( @Test ) );
MfG