Delphi 5 です。
最近の Jedi などの API でよく
type
flag = (
flag1 = $1,
flag2 = $2,
flag3 = $4
)
のような記述を見かけます。
Delphi 5 にそのまま通すとエラーになるので
flag = (
flag1,
flag2,
flag3
)
としています。
flag3 が $4 であるため、問題があると思うんですが
対処法等ありましたらご教示ください。
よろしくお願いいたします。
> 最近の Jedi などの API でよく
"明示的に順序値を割り当てられた列挙型" は Delphi 6 からですね。
type
flag = (
flag_Dmy_00, // 00: $00
flag1, // 01: $01
flag2, // 02: $02
flag_Dmy_03, // 03: $03
flag3, // 04: $04
flag_Dmy_05, // 05: $05
flag_Dmy_06, // 06: $06
flag_Dmy_07, // 07: $07
flag4 // 08: $08
);
あくまで列挙型を用いるという事であれば、
ダミーの列挙子を定義してやればよろしいかと思います。
[明示的に順序値を割り当てられた列挙型 (DocWiki)]
http://docwiki.embarcadero.com/RADStudio/ja/%E5%8D%98%E7%B4%94%E5%9E%8B#.E6.98.8E.E7.A4.BA.E7.9A.84.E3.81.AB.E9.A0.86.E5.BA.8F.E5.80.A4.E3.82.92.E5.89.B2.E3.82.8A.E5.BD.93.E3.81.A6.E3.82.89.E3.82.8C.E3.81.9F.E5.88.97.E6.8C.99.E5.9E.8B
なるほど。
その手がありましたね・・・。
embarcaderoのリンクまで有難うございます。
聞いてよかったです。
どうも有難うございました!
ツイート | ![]() |