Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Nodescript von C# umschreiben (https://www.delphipraxis.net/183022-nodescript-von-c-umschreiben.html)

milos 4. Dez 2014 23:27

Nodescript von C# umschreiben
 
Hallo,

ich habe früher immer diese simple Klasse benutzt um eine Baumstruktur zu generieren:

C# Code
Code:
        private class Tree
        {
            public Dictionary<string, Tree> Trees = new Dictionary<string, Tree>();
            public string Value;

            public Tree(string V = "")
            {
                Value = V;
            }

            public Tree this[string index]
            {
                get
                {
                    Tree item;
                    if (Trees.ContainsKey(index)) item = Trees[index];
                    else
                    {
                        Trees.Add(index, item = new Tree());
                    }
                    return item;
                }
            }
        }
ich kann sie ganz leicht un bequem benutzen:

C# Code
Code:
                var root = new Tree();
                root["ich"]["mache"]["was"]["ich"]["will"].Value = "und es funktioniert sogar!";
kann man dies in Delphi auch etwa so umsetzten?

MfG

Sir Rufo 4. Dez 2014 23:32

AW: Nodescript von C# umschreiben
 
Ja, kannst du quasi 1:1 umsetzen

BUG 5. Dez 2014 06:16

AW: Nodescript von C# umschreiben
 
Der Subscript-Operator für eine Klasse kann in Delphi über eine Default-Property definiert werden.
... und nicht vergessen den Quark wieder aufzuräumen (keine Garbage-Collection).

milos 7. Dez 2014 03:59

AW: Nodescript von C# umschreiben
 
Zitat:

Zitat von BUG (Beitrag 1282296)
Der Subscript-Operator für eine Klasse kann in Delphi über eine Default-Property definiert werden.
... und nicht vergessen den Quark wieder aufzuräumen (keine Garbage-Collection).

Das hat mir gefehlt. Danke :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:51 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