2016-09-06 1 views
0

Je ne peux pas appeler la complétion de classe (via Ctrl + Maj + C) en utilisant Embarcadero RAD Studio XE6, si j'ai la structure de classe suivante. Le programme fonctionne correctement, mais l'EDI provoque l'erreur suivante. Si je veux l'utiliser, je dois commenter DescriptionArray, ce qui est un peu ennuyeux. Par conséquent, je voudrais savoir, si quelqu'un sait, où est le problème, ou ce que je fais mal.Problème d'achèvement de classe Delphi RAD Studio

GT_Class = class 
type 
    TCustomEnum = (ceValue1, ceValue2, ceValue3, ceValue4); 
    TCustomSet = set of TCustomEnum; 

const 
    DescriptionArray : array[TCustomEnum] of string = ('Description1', 'Description2', 'Description3', 'Description4'); 
end; 

Message d'erreur

Error message

+0

Je pense que c'est parce qu'il n'y a rien à terminer dans votre classe en premier lieu. –

+4

Je peux reproduire l'erreur dans XE6 mais pas à Berlin. Mettre une visibilité en face de const a supprimé l'erreur lors de l'appel de la complétion de la classe. –

+0

Qu'espérez-vous que se passe-t-il lorsque vous invoquez l'achèvement de la classe pour cette classe? –

Répondre

0

résolu par Stefan Glienke dans comment. En fait, c'est un bug dans Delphi XE6 et dans d'autres versions, il a été résolu. Vous devez définir la visibilité même si elle est définie par défaut.

GT_Class = class 
public 
    type 
    TCustomEnum = (ceValue1, ceValue2, ceValue3, ceValue4); 
    TCustomSet = set of TCustomEnum; 

    const 
    DescriptionArray : array[TCustomEnum] of string = ('Description1', 'Description2', 'Description3', 'Description4'); 
end;