詳細については、『動的アクセス用の大括弧構文 (Bracket syntax for dynamic access)』を参照してください。
// 固定レコード・パーツ Record myFixedRecordPart type=serialRecord { fileName = "myFile" } 10 ID INT; 10 Job CHAR(10); end // レコード・パーツ (非固定) Record myDynamicRecordPart type=basicRecord ID INT; Job CHAR(10); end Program myProgram dynamicPerson myDynamicRecordPart; myFlexID INT; fixedPerson myFixedRecordPart; myFixedID INT; Function main() flexPerson.ID = 123; flexPerson.Job = "Student"; fixedPerson.ID = 456; fixedPerson.Job = "Teacher"; relationship Dictionary { dynamicRecord=dynamicPerson, staticRecord=fixedPerson }; end end end
myDynamicID INT; myDynamicID = relationship.dynamicRecord.ID;
dynamicRecord への参照は動的参照となり、ID への参照は動的参照となり、識別子 ID は実行時に可視になります。
myFixedID INT; // 無効 myFixedID = relationship.fixedRecord.ID;
myFixedID INT; myOtherRecord myStaticRecordPart; myOtherRecord = relationship.fixedRecord; myFixedID = myOtherRecord.ID;
動的アクセスは、代入 (左辺または右辺)、論理式、および set、for、openUI の各文の中で有効です。
関連する概念
動的アクセス用の大括弧構文
辞書
プログラム・パーツ
EGL での変数の参照
Typedef
関連するタスク
EGL での変数と定数の宣言