Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Wo ist z.B. "IntToStr(Integer);" gespeichert?
Georg08 - Do 11.03.10 19:21
Titel: Wo ist z.B. "IntToStr(Integer);" gespeichert?
Hallo,
Ich habe mir eine funktion geschreiben, die mir erlaubt dezimale Zahlen in binäre Zahlen zu wandel und möchte diese Funktion nun genauso wie z.B. IntToStr() nutzen können.
Ich nehme an dass es eine datei gibt, die diese Funktion beinhaltet und ich meine Funktion dort hinzufügen muss...
Daher ,uss ich wissen, welche Datei diese Befehle beinhaltet...
Danke
(Es gibt noch eien Möglichkeit, bei der IntTOStr() usw. in keienr Datei wären, diese habe ich jedoch ausgeschlossen. Falls die Befehle jedoch wirklich in keiner Datei sind bitte keine seltsamen Kommentare :D )
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Do 11.03.2010 um 21:47
elundril - Do 11.03.10 19:24
In der Unit SysUtils, soweit ich das sehe, aber du musst deine Funktion nicht auch dort reinschreiben. Du kannst eine komplett eigene Unit machen und die dann einfach in deine Projekte einbinden bzw andere können diese dann in ihre projekte einbinden.
lg elundril
Jann1k - Do 11.03.10 19:24
Speicher deine Funktion in einem eigenen Modul ab und füge dieses dann in den "Lib" Ordner deines Delphi-Verzeichnisses ein. Um deine Funktion dann nutzen zu können, musst du nur das entsprechende Modul unter "Uses" angeben.
Jakob_Ullmann - Do 11.03.10 19:24
Rechtsklick auf die Funktion im Quelltext -> Deklaration anzeigen (dürfte auf die SysUtils verweisen). Allerdings empfehle ich dir nicht, das auszuprobieren. Mach ansonsten unbedingt ein Back-up!
Dude566 - Do 11.03.10 19:25
Ich würde mal sagen du kannst dir eine eigene Klasse schreiben, Stichwort OOP. ;)
Edit: :D da guckt man, schreibt schnell und 3 andere tun dies auch.
Gausi - Do 11.03.10 19:28
Für solche Funktionen braucht man keine Klasse.
Pack deine Funktion(en) in eine eigene Unit, füge den Funktionskopf auch unter "interface" ein, und füge den Pfad zu deiner Unit den Bibliothekspfaden bei Delphi hinzu, damit sie auch gefunden wird.
Die Standard-Units, die bei Delphi mitgeliefert werden, zu bearbeiten, ist nicht zu empfehlen.
Georg08 - Do 11.03.10 19:28
erst mal danke für die vielen und schnellen antworten...
an die möglichkeit eine eigene unit zu schreiben habe ich auch schon gedacht, aber ich müsste bei jedem star diese unit in die uses eigeben (wenn ich die IntToBin() funktion nutzen möchte)...
wenn es keine "schönere" variante gibt greife ich darauf zurück...
Jakob_Ullmann - Do 11.03.10 19:28
Warum soll er sich eine eigene Klasse schreiben? Ein eigenes Modul reicht doch, wenn die Funktionen dann klassenlos deklariert werden...
(mann, schon wieder zweie schneller)
elundril - Do 11.03.10 19:32
Georg08 hat folgendes geschrieben : |
an die möglichkeit eine eigene unit zu schreiben habe ich auch schon gedacht, aber ich müsste bei jedem star diese unit in die uses eigeben (wenn ich die IntToBin() funktion nutzen möchte)...
|
das kann man beheben indem man die eigene Unit in den Lib-Eintrag bei Delphi hinzufügt. ;) dann schreibt er das immer selbst dazu sobald du die Funktion IntToBin aufrufst.
lg elundril
Georg08 - Do 11.03.10 19:35
eine blöde frage:
Welcher Lib-Eintrag :D?
elundril - Do 11.03.10 19:41
Auf Englisch in Delphi 7 ist es unter: Tools -> Environment Options -> Library -> Library Path -> Dort den Pfad eintragen, durch ; von den vorhergehenden Getrennt.
lg elundril
Georg08 - Do 11.03.10 19:45
ok danke
jetzt kommt nurnoch ein fehler, der wird aber nur verursacht, da ich die syntax nich kenne, die ich benutzen muss...
---
Moderiert von
Narses: Beiträge zusammengefasst---
Ein kleines Problem habe ich noch :D
Wie soll die Unit aufgebaut sein?
Denn wenn ich folgenden code benutze, kommt ein fehler ([Fehler] IntToBin.pas(3): 'INTERFACE' erwartet, aber 'FUNCTION' gefunden)
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| unit IntToBin;
function IntToBin():string; begin end; |
Gausi - Do 11.03.10 20:04
So, wie Delphi das Grundgerüst schon aufstellt. ;-)
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| unit Unit1;
interface
function Machwas: Integer;
implementation
function Machwas: Integer; begin result := 1338; end;
end. |
Aber die Unit genauso wie die Funktion zu nennen, sollte man auch vermeiden.
Georg08 - Do 11.03.10 20:12
ok Danke
funktioniert alles, nur die unit muss ich immer manuell hinzufügen...
gibts dafür ne lösung?
Delete - Do 11.03.10 21:27
Georg08 hat folgendes geschrieben : |
ok Danke
funktioniert alles, nur die unit muss ich immer manuell hinzufügen...
gibts dafür ne lösung? |
Ähm, brauchst du die Funktion denn wirklich in JEDEM neuen Projekt? Kann ich mir nicht vorstellen. Fügt die Unit hinzu, wenn du sie brauchst.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!