unbekannte Anzahl von Parameter

Moderator: Moderatoren

Antworten
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

unbekannte Anzahl von Parameter

Beitrag von AUGE_OHR »

hi.

ich möchte Xbase++ Function für andere xBase Dialekte aufbereiten und hab ein Problem mit der (möglichen) Anzahl von Parameter
BAnd( <nVa1>, <nVal2>, [<nVal3>,...] ) -> nBitwiseAnd

FUNCTION BAnd(...)
RETURN My_BAnd(...)

---

ich kenne PCOUNT() und PValue() aber es scheint mir ein "umständlicher" Weg zu sein :?:
gibt es nicht nocht einen anderen Weg :?:
gruss by OHR
Jimmy
Benutzeravatar
Lewi
1000 working lines a day
1000 working lines a day
Beiträge: 830
Registriert: Di, 07. Feb 2006 14:10
Wohnort: Hamburg
Danksagung erhalten: 2 Mal

Re: unbekannte Anzahl von Parameter

Beitrag von Lewi »

Hallo Jimmy,
packe die Parameter in ein dynamisches Struktur-Array (als Index wählst Du Variablen-Namen) und übergebe dieses Array der Zielfunktion. In der Zielfunktion greifst Du dann Index-Key-orientiert auf das Array zu. Mit einer Prüfung auf das Vorhandensein eines bestimmtes Index-Keys läßt sich dann feststellen, ob der "Parameter" übergeben wurde.

Gruß Olaf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: unbekannte Anzahl von Parameter

Beitrag von AUGE_OHR »

hi,
Lewi hat geschrieben: Fr, 25. Okt 2019 14:40 packe die Parameter in ein dynamisches Struktur-Array (als Index wählst Du Variablen-Namen) und übergebe dieses Array der Zielfunktion. In der Zielfunktion greifst Du dann Index-Key-orientiert auf das Array zu. Mit einer Prüfung auf das Vorhandensein eines bestimmtes Index-Keys läßt sich dann feststellen, ob der "Parameter" übergeben wurde.
in diesem Fall war meine Überlegung falsch da ich dafür keine Function brauche sondern ein #xTranslate.

Code: Alles auswählen

   #xtranslate BAND                            =>  hb_BitAnd
   #xtranslate BOr                             =>  hb_BitOr
   #xtranslate BXOr                            =>  hb_BitOr
   #xtranslate BNot                            =>  hb_BitNot
bei einer Function werde ich mir deinen Vorschlag merken, Danke
gruss by OHR
Jimmy
Antworten