アプリ版:「スタンプのみでお礼する」機能のリリースについて

Embarcadero RAD Studio 2010 Architect Trialというお試し版を使っています。
constを使って定義した定数をローカル変数の初期化の際に以下のようになります。
[DCC エラー] Test.pas(39): E2026 定数式が必要です

これでは、定数を1箇所で定義しても定数が使えず即値なので、
プログラム作成やメンテナンスに困ると思うのですが、
昔、Delphiを使っていたのですが忘れてしまって、どうしていたか思い出せませんでした。

皆さんは定数をどのように定義して、どのように使っているのでしょうか?

//■定義
unit DEFUnit;

interface
// 定数・変数
const DAT1 :Integer = 10;
const DAT2 :Integer = 20;
const DAT3 :Integer = 30;

implementation
// なし

end.


//■利用
unit TestUnit;

interface

uses DEFUnit;

var

data : Array [0..2, 0..1] of Integer = (
// 先手駒
(DAT1, 1),
(DAT2, 2),
(DA3T, 3)
);

implementation

end.

A 回答 (2件)

型付き定数にしているからです。


型付き定数は、定数式には使用できません。
型を付けないで、
const DAT1 = 10;
とすればエラーにはなりません。

あと、全部にconstと付けなくてもいいですよ。
const
DAT1 = 10;
DAT2 = 20;
DAT3 = 30;
    • good
    • 0

>(DA3T, 3)


記述ミスが原因では?

この回答への補足

プログラムでは DAT3でしたが、質問で書き間違えました。
エラーはDAT1の所で発生します。

補足日時:2009/10/23 15:12
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A