AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Array [1..5] of Function

Ein Thema von Glühwürmchen · begonnen am 17. Okt 2012 · letzter Beitrag vom 23. Okt 2012
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.374 Beiträge
 
Delphi 12 Athens
 
#1

AW: Array [1..5] of Function

  Alt 17. Okt 2012, 20:20
Du mußt dich Mal entscheiden:
Mit "of object" kann man der Variable eine Methode (function) oder Klassen-Methode (class function) zuweisen, welche in Klasse enthalten ist.
Willst du eine normale Prozedur/Funktion zuweisen (so wie dein PosDstExists), dann ohne das "of object".

Zitat:
TValidatefunctions[1] := ...
Und das TValidatefunctions ist ein Typ, aber du willst doch eigentlich eine Variable haben.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (17. Okt 2012 um 20:22 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Glühwürmchen
Glühwürmchen

Registriert seit: 31. Okt 2003
Ort: Pfinztal
156 Beiträge
 
Delphi 2010 Professional
 
#2

AW: Array [1..5] of Function

  Alt 17. Okt 2012, 20:30
Ok,
erst mal Danke, für die Antwort - auch wenn ich sie momentan nur teilweise verstehe.

Hm, entschieden habe ich mich schon. Nur offenbar, fehlt es mir am Durchblick, Eure Antworten richtig umzusetzen
oder ich bin zu müde dafür.

Wie dem auch sei, ich sehe mir das morgen früh noch mal an und melde mich wieder.

Vielen Dank nochmal.
Gute N8.
Gruß Glühwürmchen
<><
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.374 Beiträge
 
Delphi 12 Athens
 
#3

AW: Array [1..5] of Function

  Alt 18. Okt 2012, 00:32
Nja, erstmal mußt du wissen für was du einen Funktions-Zeiger brauchst.
Delphi-Quellcode:
procedure EineProzedur{...};

type
  TEineKlasse = class
    procedure EineMethode{...};
    class procedure EineKlassenMethode{...};
  end;

begin
  Syncronize(nil,
    procedure{...}  // EineAnonymeMethode ... Anonym und darum auch ohne Namen ;)
    begin
      ShowMessage('Hallo');
    end);
end;
Und danach entscheidet sich welcher Zeigertyp sich am Besten eignet.
Delphi-Quellcode:
type
  EinProzedurZeiger = procedure{...}; // Prozeduren
  EinMethodenZeiger = procedure{...} of class; // Methoden oder Klassen-Methoden
  EinAnonymerZeiger = reference to procedure{...}; // alles (aber wenn es nur um Prozeduren ODER Methoden geht, dann isses ein bissl viel Overhead)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von implementation
implementation

Registriert seit: 5. Mai 2008
940 Beiträge
 
FreePascal / Lazarus
 
#4

AW: Array [1..5] of Function

  Alt 18. Okt 2012, 09:46
Hinweis: Es geht um Delphi 7, da gab es weder Anonyme Methoden, noch das Reference-To-Konstrukt.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.374 Beiträge
 
Delphi 12 Athens
 
#5

AW: Array [1..5] of Function

  Alt 18. Okt 2012, 09:55
Ich hab ihm ja nicht umsonst vorher schonmal gezeigt, wie es (nur) für Prozeduren oder Methoden geht.
Das war jetzt nur nochma ein Überblick über Alles, was "aktuell" möglich ist (abgesehn von den bösen Zeigergeschichten und der RTTI).
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Glühwürmchen
Glühwürmchen

Registriert seit: 31. Okt 2003
Ort: Pfinztal
156 Beiträge
 
Delphi 2010 Professional
 
#6

AW: Array [1..5] of Function

  Alt 23. Okt 2012, 07:10
Also vielen Dank für Eure Antworten!
Aufgrund des Zeitdrucks, der beim Projektende immer auftritt und meiner Verständnisschwierigkeiten habe ich das Problem schließlich anders gelöst.

Aber sobald ich wieder etwas Luft habe, lese ich das hier noch mal in Ruhe durch und versuche es nachzuvollziehen.
Gruß Glühwürmchen
<><
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz