Delphi-PRAXiS
Seite 13 von 20   « Erste     3111213 1415     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi 9 - Eure Erwartungen (https://www.delphipraxis.net/24905-delphi-9-eure-erwartungen.html)

sakura 22. Sep 2004 17:10

Re: Delphi 9 - Eure Erwartungen
 
Zitat:

Zitat von Oxmyx
Ich weiß nicht, aber ich finde das trotzdem unnötig umständlich. Wenn ich z.B. als einfachstes Beispiel einen Speicherbereich mit GetMem reserviere, wäre es doch einfacher, wenn ich direkt den Zeiger mit einer Array-Syntax aufrufen kann, anstatt zu herumzucasten oder zu inkrementieren.

GetMem ist unter .NET eh tot :mrgreen: Aber hast Du in meinem Beispiel irgendwas von Inc/Dec gesehen? Ich habe auch den Pointer wie auf ein ganz normales Array zugegriffen, mit der Ausnahme, das ich den dereferenziert^ habe. Ich verstehe jetzt Dein Problem dabei nicht :gruebel: Gib mal ein Beispiel.

Zitat:

Zitat von Oxmyx
Und was meinst du denn dazu, dass es in Delphi9 immer noch keine überladenen Operatoren gibt? Zumindest da musst du mir doch zustimmen, dass das manche Sachen unnötig verkompliziert.
Oder wieso es in Klassen zwar statische Funktionen, aber keine statischen Variablen gibt?

Gib mir auch mal ein kurzes Beispiel. Ich bin mir auch nicht sicher, was Du meinst, bzw. was mir hier fehlt :oops:

...:cat:...

Oxmyx 22. Sep 2004 17:26

Re: Delphi 9 - Eure Erwartungen
 
Zitat:

Zitat von sakura
GetMem ist unter .NET eh tot :mrgreen: Aber hast Du in meinem Beispiel irgendwas von Inc/Dec gesehen? Ich habe auch den Pointer wie auf ein ganz normales Array zugegriffen, mit der Ausnahme, das ich den dereferenziert^ habe. Ich verstehe jetzt Dein Problem dabei nicht :gruebel: Gib mal ein Beispiel.

Ich würde gerne folgendes machen dürfen:
Delphi-Quellcode:
irgendwas := pZeiger1[piZeiger2[piZeiger3[1]]];
Wobei alle drei Variablen Zeiger sind, keine Arrays. Ich brauche das oft, und so eine Konstruktion, wie du sie gezeigt hast, finde ich unnötig kompliziert.

Zitat:

Gib mir auch mal ein kurzes Beispiel. Ich bin mir auch nicht sicher, was Du meinst, bzw. was mir hier fehlt :oops:

...:cat:...
So eine statische Klassenfunktion kann ja nicht auf Membervariablen der Klasse zugreifen, sondern nur auf global bekannte Variablen:
Delphi-Quellcode:
var
  g_iZahl: Integer;

type
  CKlasse = class
    class function Func1(a: Integer): Integer;
  end;
Aber wieso nicht? In den meisten Fällen würde es mehr Sinn ergeben, wenn die Variablen auch zur Klasse gehören würden. Also so:

Delphi-Quellcode:
type
  CKlasse = class
  private
    const m_iZahl: Integer;
  public
    class function Func1(a: Integer): Integer;
  end;
Zu überladenen Operatoren muss ich wohl nichts sagen, deren Sinn erklärt sich von selbst.

sakura 22. Sep 2004 17:32

Re: Delphi 9 - Eure Erwartungen
 
Zitat:

Zitat von Oxmyx
Ich würde gerne folgendes machen dürfen:

Darfst Du doch.
Zitat:

Zitat von Oxmyx
so eine Konstruktion, wie du sie gezeigt hast, finde ich unnötig kompliziert.

Genau Dein Beispiel, nur nicht geschachtelt und zusätzlich die ^ .

Also:
Code:
irgendwas := pZeiger1[color=#f50000]^[/color][piZeiger2[color=#f50000]^[/color][piZeiger3[color=#f50000]^[/color][1]]];
Zitat:

Zitat von Oxmyx
Aber wieso nicht? In den meisten Fällen würde es mehr Sinn ergeben, wenn die Variablen auch zur Klasse gehören würden. Also so:

Geht seit Delphi 8 und wird in Delphi 9 wohl kaum abgeschafft werden ;-)

Zitat:

Zitat von Oxmyx
Zu überladenen Operatoren muss ich wohl nichts sagen, deren Sinn erklärt sich von selbst.

Doch bitte, ich bin mir immer noch nicht sicher ;-)

...:cat:...

Hansa 22. Sep 2004 17:34

Re: Delphi 9 - Eure Erwartungen
 
Zitat:

Zitat von Oxmyx
...Zu überladenen Operatoren muss ich wohl nichts sagen, deren Sinn erklärt sich von selbst.

Jetzt mal langsam. 8) Erkläre mal meiner Oma, daß sich der Begriff "überladener Operator" von selbst erklärt. :lol: Solche Antworten deuten meist darauf hin, daß der Sachverhalt doch nicht so klar ist, wie behauptet.

Aber bitte, da du ja genau weißt, was das ist : erkläre das jetzt mal bitte so, daß es ein Newbie versteht. Und wenn du schon dabei bist : meine Frage lautete u.a. :

Zitat:

Zitat von Hansa
Wo liegt darin ein unschlagbarer Vorteil ?


Chewie 22. Sep 2004 17:42

Re: Delphi 9 - Eure Erwartungen
 
Es ist schon bequemer mit überladenen Operatoren, meiner Meinung nach. Es verringert einfach die Schreibarbeit und kann den Code logisch fassbarer machen, sonst aber auch nix.

Beispiel: Ich hab eine Klasse erstellt, die eine komplexe Zahl darstellt. Nun will ich einfache Arithmetik betreiben. Da ist folgender Pseudo-Code:

Delphi-Quellcode:
comp1 := TComplex.Create(4, 3);
comp2 := TComplex.Create(2, 1);
comp3 := TComplex.Create;
comp3 := comp1 + comp2;
doch schneller zu lesen als:

Delphi-Quellcode:
comp1 := TComplex.Create(4, 3);
comp2 := TComplex.Create(2, 1);
comp3 := TComplex.Create;
comp3.Value := comp1.Value;
comp3.Add(comp2);
Oder eine Sortierfunktion, die zwei Objektreferenzen erhält und diese mittels < und > vergleicht. Durch quasi "virtuelle" Operatoren wird immer die zu den übergebenen Objektreferenzen Vergleichsfunktion ausgeführt. Ist meiner Ansicht wieder lesbarer als obj1.Compare(obj2).

Aenogym 22. Sep 2004 17:46

Re: Delphi 9 - Eure Erwartungen
 
sorry, wenn ich eure diskussionen um den presi von delphi und um überladene operatoren jetzt vielleicht "unterbreche", aber mal ontopic:

ich würde mir endlich mal assoziative arrays in delphi wünschen. es gibt zwar schon units, die soetwas in der art möglich machen, jedoch ist das noch nicht das gelbe vom ei...

und aufs refactoring freue ich mich auch. hab bei der sneak peek letztens richtig gesabbert :stupid:

Aenogym

edit: peinlicher schreibfehler :oops:

sakura 22. Sep 2004 17:57

Re: Delphi 9 - Eure Erwartungen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Chewie
Beispiel: Ich hab eine Klasse erstellt, die eine komplexe Zahl darstellt. Nun will ich einfache Arithmetik betreiben. Da ist folgender Pseudo-Code:

Geht auch in Delphi 8, also wo sind Eure Probleme :mrgreen: Als Anhang die D8-Lösung.

...:cat:...

Oxmyx 22. Sep 2004 18:16

Re: Delphi 9 - Eure Erwartungen
 
Zitat:

Zitat von sakura
Zitat:

Zitat von Chewie
Beispiel: Ich hab eine Klasse erstellt, die eine komplexe Zahl darstellt. Nun will ich einfache Arithmetik betreiben. Da ist folgender Pseudo-Code:

Geht auch in Delphi 8, also wo sind Eure Probleme :mrgreen: Als Anhang die D8-Lösung.

...:cat:...

Klar, in D8 ist vieles mehr möglich. Mich stört auch nur, dass das im Win32-Compiler nicht möglich ist, weil ich hauptsächlich den Win32-Compiler verwende.

Chewie 22. Sep 2004 18:16

Re: Delphi 9 - Eure Erwartungen
 
Zitat:

Zitat von sakura
Geht auch in Delphi 8,

Richtig. Im .NET-Compiler geht es, aber laut der Ankündigung wird es nicht im Win-Delphi9-Compiler gehen!

sakura 22. Sep 2004 18:19

Re: Delphi 9 - Eure Erwartungen
 
Zitat:

Zitat von Chewie
Zitat:

Zitat von sakura
Geht auch in Delphi 8,

Richtig. Im .NET-Compiler geht es, aber laut der Ankündigung wird es nicht im Win-Delphi9-Compiler gehen!

Tja, vielleicht in Delphi 10 :mrgreen: Die können nicht alles machen ;-) Es ist eine schöne Sache, das stimmt, aber ich kann mir vorstellen, dass dazu auch grundlegende im Copmiler Änderungen nötig sind. Man muss bedenken, das die Operatoren von .NET unterstützt werden und somit der Delphi.NET Compiler es nur in der IL darstellen muss, die Logik kommt von .NET

...:cat:...


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:34 Uhr.
Seite 13 von 20   « Erste     3111213 1415     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz