Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Prism D8: Typprüfung (https://www.delphipraxis.net/23817-d8-typpruefung.html)

Jens Schumann 10. Jun 2004 09:25


D8: Typprüfung
 
Hallo,
im aktuellen Entwickler habe ich folgenden Source entdeckt:
Delphi-Quellcode:
procedure TWinForm.Button1_Click(sender: System.Object; e: System.EventArgs);
var
  aDoc : IHTMLDocument2;
  aAr : Array of TObject;begin
  If Sender=Button1 then
    begin
    aDoc:=AxWebBrowser.Document as IHTMLDocument2;
    SetLength(aAr,1);
    aAr[0]:='<html>Das ist ein [b]Test[/b]</html>';  
    aDoc.writeln(aAr);
    end; // If Sender=Button1 then
end;
Da ich mich noch nicht viel mit .NET beschäftigt habe erscheint der Source etwas mysteriös.

- aAr ist ein dyn Array, dass Elemente vom Type TObject aufnehmen kann.
- aDoc.Writeln erwartet einen Parameter vom Type Array of TObject

Das wirklich Neue ist aber diese Zeile
Delphi-Quellcode:
aAr[0]:='<html>Das ist ein [b]Test[/b]</html>';
Hier wird einem TObject scheinbar eine Konstante zugewiesen.

Wie ist das möglich ???

Ich habe mir eine Theorie gebastelt:
Wenn die .NET Maxime "Alles ist ein Objekt" auch für Delphi 8 gilt, dann wird
'<html>Das ist ein Test</html>' bei der Zuweisung ebenfalls als Objekt betrachtet.
(bis einschließlich D7 undenkbar)
Und schon ist die Welt der strengen Typprüfung wieder im Lot.

Stimmt meine Theorie ???

sharkx 10. Jun 2004 09:47

Re: D8: Typprüfung
 
in .NET ist _alles_ ein Object. Absolutes OOP... Deshalb macht das coden in .NET auch so wunderbar spass :)

Jens Schumann 10. Jun 2004 09:49

Re: D8: Typprüfung
 
Zitat:

Zitat von sharkx
in .NET ist _alles_ ein Object. Absolutes OOP... Deshalb macht das coden in .NET auch so wunderbar spass :)

Vielen Dank

Luckie 10. Jun 2004 10:31

Re: D8: Typprüfung
 
geschlossen. Hier http://www.delphipraxis.net/internal...ct.php?t=27375 geht's weiter.


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