我在Delphi 7程序中有这个常量。他们没有在Delphi下编译。
TYPE
TSingleChar= AnsiChar;
CONST
noData: TSingleChar= '.';
Ambiguity= ['x'];
DNA_Ambig= ['x', noData]+ Ambiguity;DCC错误E2026常量表达式。
发布于 2011-07-08 13:06:41
“修正”是这样的:
TYPE
TSingleChar= AnsiChar;
CONST
Const_noData = '.';
noData: TSingleChar= Const_noData;
Ambiguity= ['x'];
DNA_Ambig= ['x', Const_noData]+ Ambiguity;就编译器而言,Const_noData是一个真正的const,允许您使用它初始化noData和DNA_Ambig。你仍然尊重干原理,即noData只有一个定义,那就是Const_noData。
发布于 2011-07-08 12:55:17
const
Ambiguity: TAnsiCharSet = ['B', 'D', 'H'];
Ambiguity2: TAnsiCharSet = ['C', 'c', 't'] + Ambiguity;不管用。
const
Ambiguity = ['B', 'D', 'H'];
Ambiguity2 = ['C', 'c', 't'] + Ambiguity;确实有用。类型常量根本就不是常量.
(请注意,这个问题与歧义无关。它是关于什么是常数,什么不是常数。)
https://stackoverflow.com/questions/6624574
复制相似问题