我正在尝试使用Writeable structured consts
dcc32 的参数(-J$+ 开关),但它不起作用。示例代码:
program Project2;
{$APPTYPE CONSOLE}
{$R *.res}
uses
System.SysUtils;
const
TEST : array [0..3] of string =
('1', '2', '3', '4');
begin
try
TEST[1] := '1';
except
on E: Exception do
Writeln(E.ClassName, ': ', E.Message);
end;
end.
命令:DCC32.EXE .\Project2.dpr -$J+
错误:Project2.dpr(16) Error: E2064 Left side cannot be assigned to
如果我修改 dproj 添加<DCC_WriteableConstants>true</DCC_WriteableConstants>
选项,项目将在 IDE 中编译。
我有一个包含许多包的项目,并且这个包(出于某种我不知道的原因,但我无法修改它)在他们的 dproj 中有 DCC_WriteableConstants。当我尝试编译使用此包的项目时,dcc 必须重新编译此包中的某些单元,编译器会引发错误。
我使用的参数错误吗?有什么想法?
更新
将标志添加到cfg文件中,它可以工作。但问题仍然存在。这个或其他标志只能使用 cfg 文件吗?或者它是一个错误?