ISO Pascalのセクションを理解しようとすると少し混乱します。フィールド名のないISO Pascalレコードの変形
文法はあなたがこれを行うことができます:
type RPoint = Record
Case Boolean of
False : (X,Y,Z : Real);
True : (R,theta,phi : Real);
end;
それを構築するために、あなたは:Case Boolean
部分の目的は何でしょう:
var p: RPoint;
begin
p.x := 1;
end.
私は理解していない1つの部分がありますか?私はあなたができることを理解していますcase MyVal: Boolean
; MyVal
がフィールドセレクタになります。しかし、フィールドセレクタがない場合の目的は何ですか?また
、標準は言う:各変異体部分と
が 変異体部分が有するセレクタ型を指定された種類に関連するものとします。バリアント部分のバリアントセレクタにタグフィールドが含まれている場合、またはバリアント部分の各バリアントのcase-constant- リストに1つのcase-constantのみが含まれている場合、セレクタタイプは となります。タグタイプ、およびバリアントパートの各バリアントは、 バリアントのcase-constant-listのケース定数で示されるselectorタイプによって指定された値 に関連付けられます。それ以外の場合、バリアントパートが所有するセレクタタイプは、 がバリアントパートの各バリアントに対して正確に1つの値を持つように構成され、その他のバリアントはとなる新しい順序タイプでなければならず、それぞれのバリアントはそのタイプの別個の値。
私はかなりselector-type
が何であるかを理解していないと、なぜそれが新しいordinal-type
だろう。 selector-type
はcase Boolean of
のようなタイプではありませんか?そして、case-constant
の1つだけを持つcase-constant-list
のそれぞれは、それと何が関係していますか?
は過去にcomp.lang.pascal.ansi - イソニュースグループは、ISOの詳細については、最高の源であった、そしてそれにもかかわらず、それが数年でアクションを見ていません。それ以外は、Gnu Pascal(GPC)のドキュメントを検索してみてください。 –