Funktionen erstellen
Das ist Definitionssache der Programmiersprache. In Purebasic gibts keine Funktionen, da sind Unterprogramme mit oder ohne Rückgabewert Prozeduren. Bei Visual Basic z.B. wird zwischen Prozedur und Funktion unterschieden, was ich persönlich überflüssig finde.iostream hat geschrieben:Eine Prozedur hat keinen Rückgabewert, eine Funktion hingegen schon.Eine Prozedur ist doch so was ähnliches, oder
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!

Klar, Du kannst "eigene Befehle" als PureBasic Library erstellen....man könnte das irgenwie in der pure basic library speichern..
Aber das habe ich selbst noch nicht gemacht bzw. benötigt - kann da also nicht viel dazu sagen.
Frag doch mal im engl. Forum Gnozal, der hate einen Haufen eigener Libs geschrieben.

"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.
PB 6.12 x64, OS: Win 11 24H2 x64, Desktopscaling: 150%, CPU: I7 12700 H, RAM: 32 GB, GPU: Intel(R) Iris(R) Xe Graphics | NVIDIA GeForce RTX 3070
Useralter in 2025: 57 Jahre.
- Falko
- Admin
- Beiträge: 3535
- Registriert: 29.08.2004 11:27
- Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit) - Kontaktdaten:
Bei Purebasic ist beides in einem eine Procedure oder eine Funktion.iostream hat geschrieben:Eine Prozedur hat keinen Rückgabewert, eine Funktion hingegen schon.Eine Prozedur ist doch so was ähnliches, oder
Da wird von der Bezeichnung kein Unterschied gemacht.
Bei anderen Sprachen wie VB und GFA-Basic wird dieses klar getrennt.
Funktion , Sub oder Procedure.
Bei PB hängt das davon ab, wie man diese Procedure schreibt. Darum habe ich mal ein Minibeispiel angehängt.
Code: Alles auswählen
Procedure.s Probe(Wert1.f,Wert2.f) ; Procedure mit Rückgabe und Eingabe
ProcedureReturn Str(Wert1+Wert2)
EndProcedure
Procedure Probe1()
MessageRequester("Hinweis","Diese gibt nur was raus und nichts zurück")
EndProcedure
;Für Procedure in einer DLL, die öffentlich für jeden zugänglich
;sein soll wir an Procedure ein DLL dazu geschrieben. Ansonsten ist es so
;wie bei den normalen Proceduren die auch eine Funktion sein können.
;Ohne DLL dahinter wird die Procedure nicht von aussen ansprechbar sein und
;kann nur intern von anderen Proceduren gentutzt werden.
ProcedureDLL.s Probe2(Wert1.f,Wert2.f) ; Procedure mit Rückgabe und Eingabe für eine DLL
ProcedureReturn Str(Wert1+Wert2)
EndProcedure
ProcedureDLL Probe3() ; Procedure mit Rückgabe und Eingabe
Probe1()
EndProcedure
;Will man die untern beiden procedure in eine DLL compilieren braucht man
;im Reiter Compiler nur unter Compileroptionen, dort wo EXE steht auf DLL
;umstellen und schon wird beim compilieren in eine Executable eine DLL erzeugt.
;Wie man diese dann nachher im Programm aufruft oder aus einer geladenen
;DLL benutzt.
Debug Probe(10.5,10.5)
Probe1()
Debug Probe2(1.5,1.5)
Probe3()
[Edit]
Ihr seid ganz schön schnell

[/Edit
Gruß Falko
- Falko
- Admin
- Beiträge: 3535
- Registriert: 29.08.2004 11:27
- Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit) - Kontaktdaten:
Er könnte sich mal TailBite herunterladen und sich die englische Hilfe durchlesen. Damit kann man sehr einfach so eine Lib erzeugen.Kurzer hat geschrieben:Klar, Du kannst "eigene Befehle" als PureBasic Library erstellen....man könnte das irgenwie in der pure basic library speichern..
Aber das habe ich selbst noch nicht gemacht bzw. benötigt - kann da also nicht viel dazu sagen.
Frag doch mal im engl. Forum Gnozal, der hate einen Haufen eigener Libs geschrieben.
Gruß Falko
Wollen wir doch den Ralphus nicht überfordernFalko hat geschrieben:Er könnte sich mal TailBite herunterladen und sich die englische Hilfe durchlesen. Damit kann man sehr einfach so eine Lib erzeugen.

Ich frage mich nur wozu man eine Dll erstellen will, wenn man gerade erst
dabei ist, Prozeduren zu verstehen.
"Menschenskinder, das Niveau dieses Forums singt schon wieder!" — GronkhLP ||| "ich hogffe ihr könnt den fehle endecken" — Marvin133 ||| "Ideoten gibts ..." — computerfreak ||| "Jup, danke. Gruss" — funkheld
@Ralph: Eine Funktion ist eigentlich eine Procedure. Woher kennst du eigentlich das Wort "Funktion"? Bist du php-ler
?


@c4s: Deine Signatur ist cool, darf ich die kopieren und bei mir einfügenc4s hat geschrieben:"ich hab jetzt den code übernommen complimirt und abgespielt" - Raphi.

----------------------------------------------------------
PB 5.20 Beta 10 | Windows 7
PB 5.20 Beta 10 | Windows 7
- Falko
- Admin
- Beiträge: 3535
- Registriert: 29.08.2004 11:27
- Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit) - Kontaktdaten: