AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 02:02

Parameter dieser Suchanfrage:

Suche in Thema: Spring4D: Nullables
Suche alle Beiträge, die von "Stevie" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 10 von insges. 10 Treffern
Suche benötigte 0.002s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 11. Mai 2017
    Lange hat's gedauert, aber ich hab wohl endlich eine Lösung gefunden ;)
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 16. Nov 2015
    Guck dir einfach die Doku zu implicit und explicit Operator overloads an denn du scheinst offensichtlich miszuverstehen, was implizit und explicit bedeutet.
    Der Fakt, dass ein string in einen Variant gecastet wird und dann an den Variant Overload übergeben wird, hat nix mit dem Overload zu tun, sondern damit, wie Variants funktionieren.



    Schade, dachte du hättest da einen Trick gefunden....
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 16. Nov 2015
    Dann mach doch deinen Nullable open Source, Günther kann ihn nutzen und wir ersparen uns die ewige Im-Kreis-Dreherei. :roll:

    P.S. Was macht eigtl dein Add overload bei Typen, bei denen es keine Addition gibt?
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 16. Nov 2015
    TField.Value ist ein Variant. Und wenn man AsX (X sei der Typ des Felds, also string, Integer o.Ä.) führt bei Null zu einem Fehler. Daher gibts den Overload für Variant, so dass der Variant nicht erst in eine Null exception läuft sondern das "auspacken" dem Nullable überlässt.

    Und nein, ein Nullable ist kein Variant! In einen Variant kann ich zur Laufzeit alles (*) reinpacken und der Variant...
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 16. Nov 2015
    Nö, implicit heißt normale Zuweisung, explicit heißt, dass man einen Hardcast nutzen muss.

    Also so:
    myNullableInt := Nullable<Integer>(myDatabaseField.Value);
    oder
    myNullableInt := Nullable<Integer>(myStrangeVariant)
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 13. Nov 2015
    Najo, einen Variant nem Nullable<Integer> zuweisen, der nicht in einen Integer konvertiert werden kann, knallt bei dir leider ebenfalls zur Laufzeit.


    Simples Aliasing, das kann ja auch jeder mit den Spring4D Nullables machen, wie er beliebt.
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 13. Nov 2015
    Ja, das ist zugegebenerweise ziemlich bescheiden so, da hier der string erst in einen Variant konvertiert wird, um dann in den Implicit operator gepackt zu werden... :wall:
    Wir machen uns mal Gedanken dazu :gruebel:

    Eine Möglichkeit, die mir spontan einfällt, wäre den implicit operator für Variant->Nullable<T> auf explicit zu ändern. Dann muss man einen Hardcast schreiben:
    ...
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 13. Nov 2015
    Absolut nicht. Nullable<T> ist als immutable designed.

    Überleg mal, was sonst mit solchem Code passiert:

    myObj.NullableIntProp.Value := 42;
    ...


    Da Nullable<T> ein Record ist, würdest du nämlich dann nur die lokale Kopie verändern.
    siehe http://stackoverflow.com/a/9157045/587106
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 13. Nov 2015
    Dein eingangs beschriebenes Problem liegt einzig und allein an dem Pointer overload, den ich aber in Rücksprache mit meinem Kollegen für 1.2 entfernen werde.
    Immerhin kann man ja := Null schreiben, was exakt dieselbe Auswirkung hat, nur ohne die negativen Seiteneffekte, dass ich sämtliche Referenztypes assignen kann.

    Nullable<T> <-> Variant Kompatibilität ist explizites Feature.

    Allerdings...
  • Forum: Algorithmen, Datenstrukturen und Klassendesign

    AW: Spring4D: Nullables

      Delphi
      by Stevie, 13. Nov 2015
    Wieso nicht? Wenn sie konstruktiv ist, ist das immer willkommen.



    Ja, damit man meinNullable := nil schreiben kann.

    Über die Nützlichkeit und die möglichen Auswirkungen davon kann man gerne diskutieren.
    Aber wenn man das nicht mag, auskommentieren, glücklich sein. Das ist ja das schöne an open Source, gell? :)


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=Stevie&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=187273
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:17 Uhr.
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