Seite 12 von 18
Verfasst: 05.02.2006 15:23
von HeX0R
al90 hat geschrieben:Eine sache macht mir allerdings noch Kopfschmerzen. Das wegfallen des
UseDirectory() Befehls. Habs bis jetzt noch nicht hinbekommen ein Verzeichniss komplett mit unterdirs auszulesen, muss dabei aber auch sagen
das ich es nur ein paar minuten probiert habe.
Hier ein Beispiel:
Code: Alles auswählen
Procedure.l Count_Files(Source.s)
Protected Num.l
Num = 0
If Right(Source, 1) <> ""
Source + ""
EndIf
Dir.l = ExamineDirectory(#PB_Any, Source, "")
If Dir
While NextDirectoryEntry(Dir)
Select DirectoryEntryType(Dir)
Case 1
Num + 1
Case 2
If DirectoryEntryName(Dir) <> "." And DirectoryEntryName(Dir) <> ".."
Num + Count_Files(Source + DirectoryEntryName(Dir))
EndIf
EndSelect
Wend
FinishDirectory(Dir)
EndIf
ProcedureReturn Num
EndProcedure
Debug Count_Files("C:\WINDOWS")
Verfasst: 06.02.2006 00:52
von al90
@freedimension
Was meinst du mit "den Lokalen Arrays"?
Na das bei Dim ohne Global das array Local ist und somit nicht in Proceduren läuft. Nicht das es ein problem für mich wäre
Global Dim blablabla zu schreiben, aber es ist halt ungewohnt.
@HeX0R
Jauw Danke! Das kann ich gut gebrauchen.

Verfasst: 06.02.2006 01:06
von freedimension
al90 hat geschrieben:@freedimension
Was meinst du mit "den Lokalen Arrays"?
Na das bei Dim ohne Global das array Local ist und somit nicht in Proceduren läuft. Nicht das es ein problem für mich wäre
Global Dim blablabla zu schreiben, aber es ist halt ungewohnt.
Aber wieso sollte das ein
Problem mit der Beta sein? Das ist nunmal ganz einfach so, besser du gewöhnst dich dran

Verfasst: 06.02.2006 05:16
von al90
freedimension hat geschrieben:Aber wieso sollte das ein
Problem mit der Beta sein? Das ist nunmal ganz einfach so, besser du gewöhnst dich dran

Haste auch wieder recht. Anderseits: Warten wir mal die Final version ab.
vielleicht ändert sich ja auch noch was, und wenn nicht, auch gut.

Verfasst: 06.02.2006 10:13
von freedimension
Ich hoffe nicht, dass sich das noch einmal ändert. Ich finde es so wie es jetzt ist konsequent und gut.
Verfasst: 06.02.2006 10:42
von NicTheQuick
Hat sich eigentlich irgendetwas am Interface-Handling geändert? Vielleicht
eine Vereinfachung oder sowas?
Das Überladen von Funktionen funktioniert jetzt ja auch, oder?
Hab leider noch keine Zeit gehabt alles durchzulesen, geschweige denn
PB 4.0 herunterzuladen und zu testen.
Danke für Infos.
Verfasst: 06.02.2006 10:57
von Mauli
Schöne Version 4.0 - kein CODE läuft mehr ! Prima gemacht. Bei manchen Änderungen sehe ich ja nun auch ein, daß sie nötig sind. SetActiveGadget() und GetActiveGadget() .... okay, daß ist ja mal wirklich nützlich, aber warum sind Arrays nicht mehr GLOBAL ?? Was soll denn der Quark ?? Wer ist darauf gekommen und wofür brauche ich das dann ??
Statt die Zeit dafür zu vergeuden hätte man lieber die Kompatibilität im Auge behalten sollen !
USE dies und das ist wech, beim Bearbeiten der Dateien jetzt noch so viele änderungen..... also ich weiß nicht !
Und wenn ich mir hier so manche CODES anschaue (Auch wenns nur DEMOs sind) dann frage ich mich, was das noch mit BASIC zu tun hat. Schön daß hier so vile Leute ASM und CO können, aber wir sind hier im PUREBASIC Forum und nicht in der Assembler-Ecke !
Verfasst: 06.02.2006 12:02
von PMV
Und da haben wir das 2. Exemplar

im Forum -.-
PB warn glaub noch nie wirklich als eine reine Basic Sprache an zu sehen,
zumindest seit dem ich es kenne.
Das globalisieren von Arrays ist ja wohl kein Ackt, wenn dir das schreiben
von "Global" vor jedem "Dim" zu viel ist, sollteste vielleicht den Garten
machen anstelle am PC zu sitzen.
Viele wissen diese Möglichkeit zu schätzen und solltest du irgend wann
mal dich weiter Entwickelt haben wirst du sicher auch begreifen, warum
es sehr viel besser ist, wenn Arrays (und LinkedListen) nicht automatisch
Global sind.
Jede Änderung hat einen Sinn, sie ist vielleicht nur nicht für alle ersichtlich.
Dann kann man ja mal dezent nachfragen aber bei so einem Post wird dir
sicher keiner weitere Fragen beantworten.
MFG PMV
Verfasst: 06.02.2006 12:21
von Batze
Er macht seinem Namen halt alle Ehre.

Verfasst: 06.02.2006 12:48
von Zaphod
arrays sind nichtmehr automatisch global, damit man *endlich* auch lokale arrays haben kann. ich sehe das als fortschritt an.
Basic ist keine definierte sprache, von daher gibt es sowieso kein basic, ausser dem ur-basic und glaub mir, das willst du nicht benutzen.