Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   System.Generics.Collections fehlt mir (https://www.delphipraxis.net/195071-system-generics-collections-fehlt-mir.html)

Fukiszo 30. Jan 2018 22:29

System.Generics.Collections fehlt mir
 
Halli hallo,
ich versuche krampfhaft eine sehr umfangreiche komponente nach delphi version 7 zu portieren nur greift das original extrem oft auf die System.Generics.Collections unit zu.

Hat eventuell schonmal jemand diese unit nach Delphi 7 portiert? (da mir diese fehlt)

Den rest des originals kann ich ohne weitere hindernisse selber hinbekommen aber all diese TArray, TObjectQueue usw aufrufe, mit denen kann ich gerade gar nichts anfangen.

Grüße



ps: in welcher Delphi Version wurde System.Generics.Collections eingeführt?

Stevie 30. Jan 2018 23:21

AW: System.Generics.Collections fehlt mir
 
Vergisses, der Delphi 7 Compiler kann keine Generics.

jaenicke 31. Jan 2018 05:59

AW: System.Generics.Collections fehlt mir
 
Zitat:

Zitat von Fukiszo (Beitrag 1392598)
Den rest des originals kann ich ohne weitere hindernisse selber hinbekommen aber all diese TArray, TObjectQueue usw aufrufe, mit denen kann ich gerade gar nichts anfangen.

Aus TArray<TBlub> musst du array of TBlub machen oder einen eigenen Arraytyp definieren. Andere Elemente lassen sich nicht so leicht ersetzen...
Da bleibt oft nur nach alter Manier zu casten was das Zeug hält. Aber umbauen musst du da vermutlich einiges.

Das habe ich auch durch (mit einem sehr kleinen Projekt), aber ich habe mit IFDEFs gearbeitet, damit in neueren Delphiversionen Generics verwendet werden:
https://github.com/jaenicke/MTCL
Die History ist dort ja einsehbar. Das war auch ein ziemlicher Aufwand, vor allem weil die verwendeten Features bezüglich Generics nicht einmal in Delphi 2009 funktionierten, sondern erst mit XE6 oder so voll...

Zitat:

Zitat von Fukiszo (Beitrag 1392598)
ps: in welcher Delphi Version wurde System.Generics.Collections eingeführt?

In Delphi 2009 wurden Generics eingeführt und dabei auch die Unit Generics.Collections. Der Namespace System kam dann mit Delphi 2010 oder XE glaube ich dazu.

DP-Maintenance 31. Jan 2018 07:35

Dieses Thema wurde am "31. Jan 2018, 08:35 Uhr" von "Daniel" aus dem Forum "Klatsch und Tratsch" in das Forum "Sonstige Fragen zu Delphi" verschoben.

Fukiszo 31. Jan 2018 08:41

AW: System.Generics.Collections fehlt mir
 
Zitat:

Zitat von Stevie (Beitrag 1392602)
Vergisses, der Delphi 7 Compiler kann keine Generics.

Dann programmiert du zu selten. Es ist nur Code, keine Zauberei.
Wo ein Wille ist gibt's einen Weg.
Da ich das unbedingt haben möchte, ist mein Wille stark oder sturr, such's Dir aus (-;


@jaenicke: Vielen lieben Dank, da hab ich wenigstens einen Ansatz!! Ich besorg mir mal von XE4 die .Generics und seh zu das ich das hinbekomme (Danke für den ab 2009 Hinweis!)

@Admin: Danke für's versetzen des Themas, ich wusst echt nicht wohin :)


Grüße

jaenicke 31. Jan 2018 08:46

AW: System.Generics.Collections fehlt mir
 
Zitat:

Zitat von Fukiszo (Beitrag 1392624)
@jaenicke: Vielen lieben Dank, da hab ich wenigstens einen Ansatz!! Ich besorg mir mal von XE4 die .Generics und seh zu das ich das hinbekomme

Das geht nicht, weil wie schon geschrieben Generics noch nicht unterstützt werden vorher. Daher kannst du die Unit nicht irgendwie anpassen, da die ganze Syntax mit TBlub<T> vom Compiler noch nicht unterstützt wird. Du musst die Unit rausnehmen und die Stellen im Code ersetzen / anpassen.

Ich glaube dir ist nicht klar was Generics sind... wenn nicht, solltest du dir das erst einmal anschauen bevor du weitermachst.

Daniel 31. Jan 2018 08:49

AW: System.Generics.Collections fehlt mir
 
Zitat:

Zitat von Fukiszo (Beitrag 1392624)
Dann programmiert du zu selten. Es ist nur Code, keine Zauberei.
Wo ein Wille ist gibt's einen Weg.

Is' klar.
Für die Umsetzung von Generics muss auch der Compiler seinen Teil beisteuern. Und der von Delphi 7 ist dazu nicht in der Lage. Natürlich wirst Du irgendwelche Collections erstellen können - aber das wird sich nicht mit dem decken, was man im Allgemeinen unter "Generics" versteht. Ich empfehle hier etwas Lektüre, bevor Du Dich derart aus dem Fenster lehnst.

EWeiss 31. Jan 2018 08:51

AW: System.Generics.Collections fehlt mir
 
Zitat:

Das geht nicht, weil wie schon geschrieben Generics noch nicht unterstützt werden vorher
Nein?
Warum geht dann unter Delphi 2010 so etwas?

Delphi-Quellcode:
g_Obj: TArray<TgObj>;
g_Prop: TArray<TProp>;
EDIT:
Was ich aber nicht verstehe warum TBlup<T> in der Unit System definiert ist und nicht in
Generics.Collections

gruss

Klaus01 31. Jan 2018 08:53

AW: System.Generics.Collections fehlt mir
 
.. der TE hat Delphi 7, da funktioniert das nicht.

Grüße
Klaus

EWeiss 31. Jan 2018 08:58

AW: System.Generics.Collections fehlt mir
 
Zitat:

Zitat von Klaus01 (Beitrag 1392630)
.. der TE hat Delphi 7, da funktioniert das nicht.

Grüße
Klaus

Zitat:

Ich besorg mir mal von XE4 die .Generics und seh zu das ich das hinbekomme
Ich beziehe mich hier drauf..

Zitat:

Das geht nicht, weil wie schon geschrieben Generics noch nicht unterstützt werden vorher.
Es sei denn er will versuchen Generics nach D7 zu portieren.. ja dann geht es nicht das ist richtig.
Zitat:

Für die Umsetzung von Generics muss auch der Compiler seinen Teil beisteuern.
gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:13 Uhr.
Seite 1 von 4  1 23     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