AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch Träume, Wünsche und Wahnvorstellungen...
Thema durchsuchen
Ansicht
Themen-Optionen

Träume, Wünsche und Wahnvorstellungen...

Ein Thema von himitsu · begonnen am 16. Mai 2011 · letzter Beitrag vom 3. Jun 2013
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.358 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 12. Mai 2013, 10:53
Es wäre schön, wenn die IDE Methoden im Implementationsabschnitt immer in der gleichen Reihenfolge halten würde, wie sie in den Klassendefinitionen im Interfaceabschnitt definiert werden.
Wenn man dort die Reihenfolge ändert sollte dies auch im Quelltext angepasst werden (optional auf Shortcut).
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 10:34
Ich wünsche mir die If-Funktion:
Delphi-Quellcode:
// fiktive Berechnung als Beispiel
Zinssatz := (if premiumkunde then Basiszins*0.9 else Basiszins+0.75) - rabattzins;
Und natürlich gleich noch die Case-Funktion dazu:
Delphi-Quellcode:
ShowMessage('Sie haben '+
  (case idx of 1:'Nichts' 2:'Grass' 3:'Wasser' 4:'Felsenelse 'unbekannt') + 'angeklickt');
Man beachte dass man immer den Else-Teil schreiben muss; andernfalls wäre es ein Fehler.
fork me on Github
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.212 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 11:00
Das erste ist doch genau der ternäre Operator aus C!

Code:
zinssatz = (premiumkunde ? Basiszins*0.9 : Basiszins+0.75) - rabattzins:
Ich habe ihn in den ersten Tagen Delphi auch vermisst, mittlerweile bin ich wirklich froh, den nicht mehr sehen zu müssen. Lieber ein, zwei Zeilen mehr. Dafür erkennt man später in der Hälfte der Zeit, was im Code vor sich geht.
  Mit Zitat antworten Zitat
knochen

Registriert seit: 26. Aug 2009
81 Beiträge
 
Delphi 2006 Professional
 
#4

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 11:00
Ich wünsche mir die If-Funktion:
Delphi-Quellcode:
// fiktive Berechnung als Beispiel
Zinssatz := (if premiumkunde then Basiszins*0.9 else Basiszins+0.75) - rabattzins;
Gibt's schon. Such mal nach der IfThen-Funktion. Die existiert in überladener Form gleich in mehreren Units.

Und natürlich gleich noch die Case-Funktion dazu:
Delphi-Quellcode:
ShowMessage('Sie haben '+
  (case idx of 1:'Nichts' 2:'Grass' 3:'Wasser' 4:'Felsenelse 'unbekannt') + 'angeklickt');
Man beachte dass man immer den Else-Teil schreiben muss; andernfalls wäre es ein Fehler.
Auch das kann man leicht selbst schreiben.
Delphi-Quellcode:
function MyCase(idx: Integer; Values: Array of Integer): Integer;
function MyCase(idx: Integer; Values: Array of String): String; overload;
...etc.
Ggf. kann man noch einen Else-Wert übergeben, wenn gewünscht auch als optionalen Parameter.
A fool with a tool remains a fool.
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 15. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#5

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 11:49
Gibt's schon. Such mal nach der IfThen-Funktion
Ich weiss.
Aber die IfThen-Funktion (oder auch Iff-Funktion) hat den grossen Nachteil, dass alle Argumente ausgerechnet werden, bevor die Funktion aufgerufen wird.
Delphi-Quellcode:
// berechnet leider beide innere Funktionen
erg := IfThen(Juliaset, CalcJulia(...), CalcMandelBrot(...));
Man bräuchte schon Complier-Magic © damit nur ein Zweig ausgewertet wird.
Das Gleiche gilt natürlich auch für das MyCase() oder CaseString() und die Varianten davon.
fork me on Github
  Mit Zitat antworten Zitat
knochen

Registriert seit: 26. Aug 2009
81 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 12:56
Zitat von sx2008:
Aber die IfThen-Funktion (oder auch Iff-Funktion) hat den grossen Nachteil, dass alle Argumente ausgerechnet werden, bevor die Funktion aufgerufen wird.
Im letzten Jahrtausend, als die Rechner 1000 mal langsamer waren und tausend mal weniger Speicher hatten als heute, hätte mich dieses Argument bestimmt beeindruckt. Zu Erinnerung: das ist gerade mal 20 Jahre her.
A fool with a tool remains a fool.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.212 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 13:00
Auch wenn das IfThen absolut hässlich (also das genaue Gegenteil von mir) ist - Das ist kein Argument. Man sollte immer wissen, wo man grundlos Leistung verballert und wo man nicht übertrieben sparen muss.

Grundlos eine ganzen Ausdruck auswerten (Das Mandelbrot-Beispiel war eigentich genau richtig) ist geradezu katastrophal wenn du das bsp. ein paar tausend mal pro Sekunde machen willst - Auf jeder Maschine heute und in weiteren zehn Jahren.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.458 Beiträge
 
Delphi 12 Athens
 
#8

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 13:43
Durch diesen Thread ist es mir aufgefallen... himi ist seit 2 Monaten nicht in der DP aktiv gewesen.
Das kennt man von ihm ja gar nicht... Ist er ausgewandert, krank, Freundin?
Weiß jemand was ?

...ob mich mal einer vermißt?
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.749 Beiträge
 
Delphi 2007 Professional
 
#9

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 14:11
Im letzten Jahrtausend, als die Rechner 1000 mal langsamer waren und tausend mal weniger Speicher hatten als heute, hätte mich dieses Argument bestimmt beeindruckt. Zu Erinnerung: das ist gerade mal 20 Jahre her.
Falsches Argument: IfThen(obj <> nil, obj.Name, 'nix') dürfte auch in 20 Jahren noch abstürzen.
Uli Gerhardt
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#10

AW: Träume, Wünsche und Wahnvorstellungen...

  Alt 28. Mai 2013, 19:00
Falsches Argument: IfThen(obj <> nil, obj.Name, 'nix') dürfte auch in 20 Jahren noch abstürzen.
Da wäre ich mir nicht so sicher. Ich kann doch nil-Zugriffe elegant abfangen, und zwar zuverlässig.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz