Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

SUBs in TYPEs nutzen

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Bad_King
gesperrt


Anmeldungsdatum: 15.04.2006
Beiträge: 455
Wohnort: nähe Stuttgart

BeitragVerfasst am: 27.06.2006, 19:32    Titel: SUBs in TYPEs nutzen Antworten mit Zitat

Hi,

Ich will Subs in Types nutzen. Wie kann ich es machen? Also das mit dem Deklarieren der SUBs in den Types geht nicht.
Ich will sowas: type.sub()
Wie kann ich das machen?
_________________
Mein Server: http://gianluca.dyndns.org
(Ist meistens nur Tagsüber an)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 27.06.2006, 19:57    Titel: Antworten mit Zitat

Was du da anlegen willst ist eine Methode einer Klasse! Die dazu notwendige Objektorientierung hat QB aber nicht. Von daher stehst du da auf verlorenem Posten. Nimm am allerbesten C++ (die OO-Cracks schwören darauf) oder Delphi/VB. Dort kannst du solche Klassen anlegen, auch wenn die eben erwähnten OO-Cracks von diesen Sprachen nichts halten... durchgeknallt
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!


Zuletzt bearbeitet von Sebastian am 27.06.2006, 19:59, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Bad_King
gesperrt


Anmeldungsdatum: 15.04.2006
Beiträge: 455
Wohnort: nähe Stuttgart

BeitragVerfasst am: 27.06.2006, 19:59    Titel: Antworten mit Zitat

Ich brauch dazu aber QB, da ich mir eine Lib mache!
_________________
Mein Server: http://gianluca.dyndns.org
(Ist meistens nur Tagsüber an)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 27.06.2006, 20:06    Titel: Antworten mit Zitat

PP grinsen

Da wirst du wohl eine andere Lösung finden müssen. Wozu willst du die Subs denn überhaupt in einen TYPE haben?! Unterprogramme einer Bibliothek deklariert man ganz normal mit "DECLARE" entweder im eigentlichen Code oder in einer BI-Datei (bei Subs kann man die Deklaration auch ganz weglassen, wenn man CALL verwendet).
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Bad_King
gesperrt


Anmeldungsdatum: 15.04.2006
Beiträge: 455
Wohnort: nähe Stuttgart

BeitragVerfasst am: 27.06.2006, 20:09    Titel: Antworten mit Zitat

Wo kann man dann Quick C downloaden?
_________________
Mein Server: http://gianluca.dyndns.org
(Ist meistens nur Tagsüber an)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 27.06.2006, 20:11    Titel: Antworten mit Zitat

=> M3G4 H4X0R D0WNL04D P4GE M1T 4LL3N PR0GZ...
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Bad_King
gesperrt


Anmeldungsdatum: 15.04.2006
Beiträge: 455
Wohnort: nähe Stuttgart

BeitragVerfasst am: 27.06.2006, 20:16    Titel: Antworten mit Zitat

da hab ich auch schon gesucht und nix gefunden
_________________
Mein Server: http://gianluca.dyndns.org
(Ist meistens nur Tagsüber an)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 27.06.2006, 20:24    Titel: Antworten mit Zitat

Der enormen Dauer nach zu urteilen, die du für die Suche aufgewendet hast, hast du dich noch nicht wirklich bemüht. zwinkern
_________________

Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Stormy



Anmeldungsdatum: 10.09.2004
Beiträge: 567
Wohnort: Sachsen - wo die schönen Frauen wachsen ;)

BeitragVerfasst am: 28.06.2006, 02:47    Titel: Antworten mit Zitat

SUBs in Types ? Klar geht das!

Code:

DECLARE SUB Fahren ()

TYPE Autos
 Name AS STRING
 Hersteller AS STRING
 PS AS INTEGER
 Fahren AS SUB PTR
END TYPE

SUB Fahren ()
PRINT "Ich fahre jetzt..."
END SUB

DIM Auto1 AS Autos

Auto1.Fahren = @Fahren ' Sub zuweisen

CALL Auto1.Fahren() ' Sub aufrufen

_________________
+++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 28.06.2006, 03:12    Titel: Antworten mit Zitat

in FB schon, hier is aber die rede von QB..
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Stormy



Anmeldungsdatum: 10.09.2004
Beiträge: 567
Wohnort: Sachsen - wo die schönen Frauen wachsen ;)

BeitragVerfasst am: 28.06.2006, 03:36    Titel: Antworten mit Zitat

Oh... hab nicht auf die Kategorie geachtet happy
_________________
+++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Bad_King
gesperrt


Anmeldungsdatum: 15.04.2006
Beiträge: 455
Wohnort: nähe Stuttgart

BeitragVerfasst am: 28.06.2006, 19:22    Titel: Antworten mit Zitat

kann man dann in FB irgentwie libs für QB (.qlb) erstellen?
_________________
Mein Server: http://gianluca.dyndns.org
(Ist meistens nur Tagsüber an)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 28.06.2006, 19:28    Titel: Antworten mit Zitat

Nein, das geht nicht.
FB erstellt 32 bit programme/libs und QB 16 bit.
Die einzige möglichkeit wird wohl ein Umstieg auf FB sein.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Bad_King
gesperrt


Anmeldungsdatum: 15.04.2006
Beiträge: 455
Wohnort: nähe Stuttgart

BeitragVerfasst am: 28.06.2006, 19:30    Titel: Antworten mit Zitat

Ich bin bereits auf FB umgestiegen und will halt den QB programmieren eine Lib zur verfügung stellen zwinkern

Kann man in FB auch Libs (das was in QB die .qlb-Files sind) erstellen?
_________________
Mein Server: http://gianluca.dyndns.org
(Ist meistens nur Tagsüber an)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 28.06.2006, 19:33    Titel: Antworten mit Zitat

Ja, das geht.
Du kannst statische Libs(.lib) erstellen, und dynamische(.dll).
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Bad_King
gesperrt


Anmeldungsdatum: 15.04.2006
Beiträge: 455
Wohnort: nähe Stuttgart

BeitragVerfasst am: 28.06.2006, 19:34    Titel: Antworten mit Zitat

und wie geht das?
_________________
Mein Server: http://gianluca.dyndns.org
(Ist meistens nur Tagsüber an)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 28.06.2006, 19:57    Titel: Antworten mit Zitat

In QB empfiehlt es sich ansonsten wie in C (nicht C++!) zu arbeiten. Das heisst, dass man die Deklarationen in Headerdateien auslagert. An dieser Stelle sehr kurz gehaltenes Beispiel.

Headerdatei:
Code:
' Datei GRAPHLIB.BI: Headerdatei „hnlich C/C++

TYPE Punkt
  x AS SINGLE
  y AS SINGLE
END TYPE

DECLARE SUB ZeichneLinie (p1 AS Punkt, p2 AS Punkt)
DECLARE FUNCTION Abstand! (p1 AS Punkt, p2 AS Punkt)


Implementierungsteil unserer Primitiv-Bibliothek
Code:
' Datei GRAPHLIB.BAS: Implementation
' Hier sind nur die Unterprogramme enthalten

' $INCLUDE: 'graphlib.bi'

FUNCTION Abstand! (p1 AS Punkt, p2 AS Punkt)
  Abstand! = SQR((p2.x - p1.x) ^ 2! + (p2.y - p1.y) ^ 2!)
END FUNCTION

SUB ZeichneLinie (p1 AS Punkt, p2 AS Punkt)
  LINE (p1.x, p1.y)-(p2.x, p2.y)
END SUB


Hauptprogramm:
Code:
' Datei GRAPHBSP.BAS: Hauptprogramm, welches von der
' "Bibliothek" Gebrauch macht

' $INCLUDE: 'graphlib.bi'

DIM p1 AS Punkt, p2 AS Punkt, p3 AS Punkt

SCREEN 12
p1.x = 60!
p1.y = 20!
p2.x = 280!
p2.y = 50!
p3.x = 180!
p3.y = 310!
PRINT Abstand!(p1, p2)
ZeichneLinie p1, p2
ZeichneLinie p2, p3
d$ = INPUT$(1)
SCREEN 0

Und schliesslich muss man in QB mit einer Datei GRAPHBSP.MAK noch alles "zusammenkitten", welche folgenden Inhalt besitzt:
Code:
GRAPHBSP.BAS
GRAPHLIB.BAS

d.h. sämtliche Module aufgezählt. Das ganze Beispiel kann sonst als

http://beilagen.dreael.ch/QB/GRAPHBSP.ZIP

heruntergeladen werden. Der Datentyp "Punkt" ist hier gewissermassen eine "Klasse", ZeichneLinie() eine "Methode", wenn man es so haben möchte. Weiterführende Informationen:

http://www.dreael.ch/Deutsch/BASIC-Knowhow-Ecke/SUB-Unterprogramme.html
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 29.06.2006, 20:10    Titel: Antworten mit Zitat

king01 hat Folgendes geschrieben:
und wie geht das?

keine Motivation ...
siehe freebasic\examples\dll\*.* und freebasic\examples\lib\*.*
So und jetzt viel Spass.
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz