IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Delphi Discussion :

Déclaration de fonction/procedure static


Sujet :

Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 79
    Points : 46
    Points
    46
    Par défaut Déclaration de fonction/procedure static
    Bonjour,

    J'ai une fonction quelconque :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function toto(toto : toto) : toto;
    Je connait deux façons de la déclarer.

    Méthode objet:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    TFormToto = class(TForm)
    ...
    public
       function toto1(toto : toto) : toto;
    ...
     
    function TFormtoto.toto1(toto : toto) : toto;
    Méthode static(de classe):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    TFormToto = class(TForm)
    ...
    public
       class function toto2(toto : toto) : toto;
    ...
     
    class function Ttoto.toto2(toto : toto) : toto;
    Cependant, pour appeler cette dernière dans une autre Classe/Unit, je dois l'appeler comme cela: TFormToto.toto2.

    Ma question est, comment je dois déclarer toto2 pour que je puisse l'appeler dans d'autre Classe/Unit sans devoir ecrire la classe devant la méthode, comme ShowMessage de SysUtils.

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 713
    Points : 25 605
    Points
    25 605
    Par défaut
    Il est existe une façon de faire plus ancienne, le bon vieux procédural, tu as d'ailleurs écrit toi même la réponse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    interface
     
    uses ...;
     
    function toto1(toto : toto) : toto;
     
    ...
     
    implementation
     
    ...
     
    function toto1(toto : toto) : toto;
    begin
      ...
    end;

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 79
    Points : 46
    Points
    46
    Par défaut
    Ah voilà, je ne mettais pas ma déclaration au bon endroit!

    Merci Troll!

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 79
    Points : 46
    Points
    46
    Par défaut
    Désolé pour le double post, mais qu'est-ce que tu entends dire par "façon plus ancienne" ? Cette façon n'est plus utiliser aujourd'hui?

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 713
    Points : 25 605
    Points
    25 605
    Par défaut
    Si si, juste qu'elle existe depuis presque 40 ans, au début du Pascal !
    L'autre forme avec class ne doit pas avoir encore fêter ses 20 ans ! quoi qu'avec OWL ?

    Même en XE2, la dernière version, ShowMessage est resté comme avant !
    Je ne crois pas que la politique d'Embarcadero soit aussi extrémiste que celle du Java ou C#

    C'est juste qu'il est "comique" de connaître la déclaration de méthode mais pas la déclaration de simple procédure : Aide en ligne - Procédures et fonctions (Delphi)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 28/11/2005, 13h15
  2. Réponses: 6
    Dernier message: 20/11/2005, 03h53
  3. [JS] Problème déclaration de fonction
    Par glloq8 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 23/09/2005, 11h22
  4. Extension de déclaration d'un attribut static...
    Par SteelBox dans le forum C++
    Réponses: 7
    Dernier message: 15/02/2005, 21h23
  5. Utilisation de template dans un role de fonctions/procedures
    Par Punky65250 dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 01/09/2004, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo