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 :

DLL avec parametre optionnel


Sujet :

Delphi

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 15
    Points : 9
    Points
    9
    Par défaut DLL avec parametre optionnel
    Salut

    Je cherche a crée une fonction dans une dll, cette fonction aurait des parametre optionnelle.
    exemple :
    function somme (var1:integer; var2:integer; var3:integer; var4:integer);
    var1 et var2 etant obligatoire mais var3 et var4 non !

    le programme appelant pourrait appellé
    somme (1,2);
    somme (1,2,3);
    somme (1,2,3,4);

    je pensais a declaré en fait plusieur fonction du meme nom mais avec un prototype different.

    function somme (var1:integer; var2:integer);
    function somme (var1:integer; var2:integer; var3:integer);
    function somme (var1:integer; var2:integer; var3:integer; var4:integer);

    Est ce possible en delphi ?

    Merci d'avance...

    [edit]
    A priori je ne connais pas le language appelant, mais il est fort possible que cela depend bcp du langage appelant. Par exemple en specifiant des valeurs par defaut pour certain parametre.

  2. #2
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Points : 1 561
    Points
    1 561
    Par défaut
    Utilise la directive overload de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    type
      procedure somme(x: integer);overload;
      procedure somme(x,x1: integer);overload;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    procedure somme(x: integer);
    begin
      // traitement
    end;
     
    procedure somme(x,x1: integer);
    begin
      //traitement
    end;
    Pour les paramètres facultatifs, tu peux également procéder ainsi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    procedure somme1(x,x1: integer; x2 : integer = 0); 
    //x2 vaudra 0 par défaut et il ne sera pas nécéssaire de le renseigner
    //sinon il prendra la valeur qu'on lui passera
    Tu peux à la fois appeler
    somme1(5,7); //x2 vaudra 0 par défaut
    ou
    somme(5,7,11); //x2 vaudra 11 ici

    Cordialement

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 15
    Points : 9
    Points
    9
    Par défaut
    Merci grand gourou

    J'essaie ca tout de suite

  4. #4
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Points : 1 561
    Points
    1 561
    Par défaut
    Soit pour répondre complètement à ton problème

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    type
      procedure somme(x,x1: integer; x2: integer = 0; x3: integer = 0);
     
    implementation
     
     
    procedure somme(x,x1: integer; x2 : integer = 0; x3: integer = 0);
    begin
      //Traitement
    end;
    Cordialement

Discussions similaires

  1. créer une fonction avec parametre optionnel
    Par maximenet dans le forum Langage
    Réponses: 2
    Dernier message: 29/01/2006, 20h51
  2. utilisation de dll avec diverses compilateurs
    Par Thylia dans le forum C++
    Réponses: 30
    Dernier message: 21/10/2004, 16h30
  3. Réponses: 3
    Dernier message: 16/06/2004, 11h26
  4. Réponses: 12
    Dernier message: 26/04/2004, 08h32
  5. créér une dll avec borland c++ compiler
    Par juju62610 dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 26/02/2003, 09h46

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