いつもお世話になってます。
sizeof(TFoo) == TFoo.InstanceSizeは、なりたつでしょうか?
sizeof(TFoo)が常に4を返してくるのですが...
TFoo.InstanceSizeは、12を返します。
TFoo= class(TObject)
private
F0: integer;
F1: integer;
end;
貴重な時間をすみません。
成り立つかどうかは、自分でいろんなクラスを調べてみたらいいんじゃない?
> sizeof(TFoo)が常に4を返してくるのですが...
> TFoo.InstanceSizeは、12を返します。
成り立たないと結論が出ているように見えますが。
なんで成り立たないのかというとTFooはクラスへの参照、いわゆるポインタでしかないからですね。
それとも成り立ってくれないと困るような事情があるんでしょうか?
ご返信ありがとうございます。
sizeOf関数のhelpのこの文を見るとどうも腑に落ちなくて
投稿してしまいました。
ありがとうございました。
>型識別子を渡すと,その型のインスタンスを表わすために使用される容量
>(バイト数)を取得できます。
>型識別子を渡すと,その型のインスタンスを表わすために使用される容量
>(バイト数)を取得できます。
レコード型の場合は正しいサイズを返すをいうことでしょう。
ツイート | ![]() |