Am 07.12.2017 um 20:48 schrieb OoOHWHOoO: > > BEZUG 2: Pitonyak hat dieses Verhalten als BUG (der > "IsMissing"-Anweisung) eingestuft und gemeldet.
Hint: Nur weil irgend jemand irgend etwas als Bug *bezeichnet*, bedeutet das noch lange nicht, dass das ein Bug *ist*. Es ist allerdings richtig dass die Dokumentationen bezüglich sowohl OPTION als auch ISMISSING jeweils sehr mager ist, und die *genauen* 'Gebrauchsbedingungen' nicht ausreichend darstellen. /Ich/ stehe auf Thomas' Seite, dass das Auslassen eines Parameters nie vorgesehen war, und daher ein undokumentiertes Feature darstellt, das außerdem auch nur mit dem Typen VARIANT sauber funktioniert. > [3] Das Beispiel in der "LO BASIC-IDE Hilfe" zu "Optional" ist > fehlerfrei (BEZUG 4): > > [4] Auf Grund des noch bestehenden BUGs (wenn denn Pitonyak mit seiner > Einschätzung richtig liegt) tendiere ich persönlich zu Thomas' Vorschlag > "sauberer Programmierung" (keinen optionalen Parameter zwischen zwei > Kommas weglassen), da man zu leicht vergessen könnte, dass eine (in > allen Nutzungs-Varianten) funktionierende "IsMissing"-Anweisung zwingend > von der Typ-Deklaration "Variant" abhängt für alle optionalen Parameter. Meine Meinung aufgrund langjähriger Erfahrung ist, dass optionale Parameter nur im alleräußersten Notfall verwendet werden sollten, und zwar nicht wegen dem von dir angesprochenen Problem, sondern aus wartungstechnischen Gründen. Wenn du in 3 Monaten oder 5 Jahren dein Programm umschreiben musst, bist du dir selber dankbar, wenn du es von vornherein so geschrieben hast, dass du *dann* auch schnell wieder hinein findest. Und das ist bei einer klar vorgegebenen Parameterstruktur deutlich einfacher als bei einer wirren, bei der man z. B. erst mal lange überlegen muss, was denn nun ursprünglich erlaubt gewesen sein soll und was nicht, usw. Bei einigen wenigen Parametern würde ich lieber konstant einen Defaultwert übergeben, und bei vielen Parametern macht es eh mehr Sinn, zu einem Array u. ä. zu greifen. Wolfgang -- If I could, I would wish for ONE news INDEED being a fake, namely for the news of this immature cockalorum in fact became President of the United States. -- Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/ Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de Listenarchiv: https://listarchives.libreoffice.org/de/users/ Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert