Type im Funktionsblock

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

bmurray

Betreff: Type im Funktionsblock

BeitragFr, Nov 01, 2019 21:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Liebe Gemeinde,

wenn ich ein neues Type in einer Funktion anlege, dann sagt mir meine IDE (BLIde Plus), dass dies nicht so toll wäre ("Bad practice. Type started within a 'function' block"). Ich finde das jedoch überaus praktisch, wenn ich möchte, dass das Type nur in dieser Funktion angewendet wird, weil ich dann nicht tausend verschiedene Types habe, die ich bei Bedarf durchsuchen muss, und ein Element eines solches Types nicht in einer anderen Funktion erstellt werden kann. Mein Programm wird auch ganz normal kompiliert und alles funzt. Gibt es einen Grund, so etwas doch nicht zu machen? Warum bezeichnet es BLIde Plus als "Bad practice"?

Xeres

Moderator

BeitragSa, Nov 02, 2019 20:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich kann mir vorstellen das entweder BM oder BLIde selbst so eine Kapselung nicht richtig versteht. Wenn du den selben Type mehrfach anders definierst, was macht dann BLIdes auto-completion? Hab ich nie probiert, weiß ansonsten nicht ob das irgendwelche Nebenwirkungen hat.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

bmurray

BeitragSo, Nov 03, 2019 16:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Die auto-completion zeigt mir nur einen der Types an, und sie hat in der entsprechenden aufpopenden Liste auch nur einen Eintrag. Wenn ich ein neues Element erstellt habe, kriege ich interessanterweise nur die fields und methods des zuletzt erstellten Types zurück.

Kompilieren klappt dann aber nicht mehr, es kommt folgende Fehlermeldung: "error: symbol already defined".

Man kann einen Type also einmal in einer Funktion definieren, aber einen neuen mit dem gleichen Namen dann nicht mehr. Finde ich immer noch sehr praktisch, da ich dann wie gesagt keine ellenlange Liste an Types habe, sondern diejenigen, die fertig sind und nur in einer einzigen Funktion gebraucht werden, einfach vergessen kann. Wenn sie jetzt noch in der auto-completion Liste nur noch in der entsprechenden Funktion auftauchen würden, wäre das natürlich noch besser, aber ich will nicht meckern.

Ich habe mich nur gewundert, warum die IDE das bemängelt, vielleicht ist das in anderen Sprache ja gang und gäbe.

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group