Ma compréhension est que le mot-clé static
a été introduit pour la compatibilité avec .NET (avec strict
)Est-ce que le mot-clé static de Delphi a un point quelconque dans le code natif?
class TExample
class procedure First;
class procedure Second; static;
Les différences entre les procédures First
et Second
sont: -
First
peut être redéfinies dans une classe descendanteFirst
passe un paramètre auto implicite référençant la classeTExample
.
La procédure de classe Second
ne peut pas être remplacée et ne transmet aucun paramètre. Elle est donc compatible .NET. Donc, est-il utile d'utiliser le mot clé static
dans un code natif maintenant qu'il existe une divergence entre la syntaxe Delphi & Prism?
La chose est que le premier sauve eax. Probablement un prologue codé en dur dans le compilateur. IOW le premier a apparemment un paramètre et le second pas. Il pourrait réduire à la même chose avec l'optimisation sur si. –