所以我有声明的类型,它指的是人民的名称,其中一个名称是“做” 例如ADA保留字作为标识符
type name is (BOB, SKIPPY, DO)
Compiler error: reserved word "Do" cannot be used as identifier.
有没有解决这个任何地方而不必使用字符串?看起来像老师这样做的目的是为了强迫我们。
我做了一个通用的包,所以更容易做一个变量字符串类型,只是实例化呢?
所以我有声明的类型,它指的是人民的名称,其中一个名称是“做” 例如ADA保留字作为标识符
type name is (BOB, SKIPPY, DO)
Compiler error: reserved word "Do" cannot be used as identifier.
有没有解决这个任何地方而不必使用字符串?看起来像老师这样做的目的是为了强迫我们。
我做了一个通用的包,所以更容易做一个变量字符串类型,只是实例化呢?
保留字是保留字,故事结束。
有中通常采用的技术了一把当保留字是在特定情况下的最好的词:
如果你担心这将如何看,如果你输出吧,好,天真枚举到字符串属性,“图像,通常不鼓励,因为它是枚举值的文字描述,因此,您输出的内容与您选择的编码标识紧密耦合。调试很好,但对于人类可读的输出,你应该使用别的东西,比如枚举值的套管或使用枚举到字符串的Map。
除非有一些令人信服的理由,否则使用字符串来表示枚举值没有任何好处。
转到带有前缀[或后缀]选项,那么你可以做这样的事情:
type Names is (Name_Bobby, Name_Dave, Name_Calvin, Name_Do);
Function Put(Item : In names) Return String is
Prolog : Constant String:= "Name_";
Image : Constant String:= Item'Image;
begin
Return Image(Image'First+Prolog'Length..Image'Last);
end Put;