Warum ist Structure global?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Warum ist Structure global?

Beitrag von ts-soft »

Jetzt wird es langsam Zeit für die Frage: Warum ist Procedure global? :mrgreen:

(Spaß muß sein)
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Derren
Beiträge: 558
Registriert: 23.07.2011 02:08

Re: Warum ist Structure global?

Beitrag von Derren »

NicTheQuick hat geschrieben:
Därrän hat geschrieben:Ja gut. Aber Prozeduren sind auch nur Goto-Anweisungen.
Wenn dem so wäre, dann könnte man nicht rekursiv Funktionen aufrufen und dann gäbe es auch nicht in jeder Rekursion einen neuen Heap für die lokalen Variablen.
Genau wie zwei Protected variablen zwei verschiedene Speicherbereiche belegen. Mit entsprechendem Overhead (der beim Procedure-Schlüsselwort eben vom Compiler übernommen wid), kann auch Goto rekursiv benutzen und dabei bei jedem Sprung einen neuen Speicherbereich reservieren.
Aber es geht ja vielmehr darum, dass es für manche Zwecke sinnvoll wäre lokale Strukturen zu haben. Was der Compiler dann im Endeffekt daraus macht ist doch völlig egal. Deswegen schreib ich meine Programme je in PB und nicht ASM.

und, Ja, ts-soft: Lokale Prozeduren wären auch nicht schlecht. Aber dafür haben wir ja jetzt auch die Module.
Es geht mir ja nicht darum OOP zu erzwingen, Gott weiß ich hab selber lang genug gebraucht um OOP zu kapieren, aber für Includes wäre es doch echt nicht schlecht gewesen.
Hier wurde bestimmt das ein oder andere mal gepostet dass es Überschneidungen zwischen mehreren Includes verschiedener Programmierer gegeben hat. Oder gar nach eine Änderung der Befehlsnamen in PB.
Die Module bringen ja nun die abgekapselte Funktionalität von OOP mit.

Problem gelöst.
Signatur und so
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: Warum ist Structure global?

Beitrag von ts-soft »

Sinn macht das ganze ja nur bei Namenskonflikten. Gleiche Namen für versch. Strukturen wird wohl keiner nutzen wollen
und bei Fremdcode sind dann die Module oder UserLibs die Lösung.
Derren hat geschrieben:Problem gelöst.
So sehe ich das auch :D
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Antworten