Bonjour,
Est-ce que quelqu'un sait expliquer pourquoi les accesseurs des propriétés de classe doivent être statiques ?
Cette contrainte est étrange puisque une propriété de classe est liée à la classe. Il serait logique que les accesseurs disposent d'une référence à la classe par l'argument Self comme c'est le cas des méthodes de classe non statiques.De plus, cette limite est contournable par l'emploi de fonctions de classe qui fonctionnent comme des pseudo propriétés
Cette technique est utilisée par Borland/CodeGear/Embarcadero pour définit la propriété ClassName
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 TType1 = class private class function GetProp1: string; static; // Ne peut pas être virtuelle et surchargée public class property Prop1 : string read GetProp1; // Pseudo class property prop2 class function Prop2 : string; virtual; // Est virtuelle et peut être surchargée end;
Merci par avance,
DLZ
Partager