出于兼容性原因(对象被序列化并导出并且必须与外部名称匹配)我希望字段名称为'type',即
TTBaseWebResponse = class
private
   type: String;
   success: Integer;       
end;
or
TTBaseWebResponse = class
private
   ftype: String;
   fsuccess: Integer;       
public
   type: string read fstring write fstring;
   success: integer read fsuccess write fsuccess;   
end;
Delphi(XE2)甚至不会编译它.这是可能吗?怎么样?
尝试在字段名称前使用&
这包含在文档中:
扩展标识符
您可能会遇到与Delphi语言保留字同名的标识符(例如,类中的类型或方法).例如,一个类可能有一个名为的方法
begin.Delphi保留的单词如begin不能用于标识符名称.如果您完全符合标识符,那么没有问题.例如,如果要将Delphi保留字类型用于标识名称,则必须使用其完全限定名称:
Run Code Online (Sandbox Code Playgroud)var TMyType.type // Using a fully qualified name avoids ambiguity with Delphi language keyword.作为一个较短的替代方案,&符号(&)可用于解决标识符和Delphi语言保留字之间的歧义.的&防止被解析为一个关键字的关键字(即,一个保留字).如果遇到与Delphi关键字同名的方法或类型,则可以在标识符名称前加上&符号时省略命名空间规范.但是当您声明一个与关键字同名的标识符时,您必须使用&:
Run Code Online (Sandbox Code Playgroud)type &Type = Integer; // Prefix with '&' is ok.
是的,你必须在名字之前使用&;
TTBaseWebResponse = class
private
  &type: String;
  success: Integer;       
end;
| 归档时间: | 
 | 
| 查看次数: | 1614 次 | 
| 最近记录: |