Compilerfehler oder bewusstes Schlupfloch?

StructuredTrash

Level-3
Beiträge
1.165
Reaktionspunkte
309
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich bin bei TC2, genauer bei CoDeSys 2, gerade auf eine Ungereimtheit gestossen. Ich bekomme von einem FB eine VAR_OUTPUT, auf die ich im aufrufenden Programm nicht schreiben kann, und das soll ja auch so sein. Wenn ich diese Variable aber per VAR_IN_OUT an einen weiteren FB übergebe, kann ich sie dort beschreiben. Das eingeschränkte Zugriffsrecht fällt bei der Übergabe per Referenz unter den Tisch. Kommt mir etwas unsauber vor, und deshalb habe ich moralische Bedenken, es so zu machen, obwohl es eigentlich genau das ist, was ich brauche. Was meint Ihr dazu?
 
Tjo so ist das halt mit Pointern. Sie geben einem mehr Freiheiten mit der erhöhten Wahrscheinlichkeit auch mehr Schei$$e zu bauen. Wenn du die Zugriffsrestriktionen auch bei der direkten Speicheradressierung haben willst würd wahrscheinlich sowas wie eine CLI bei .Net nötig. Immerhin kann der Compiler ja nicht wissen auf welche Speicherbereiche du während der Laufzeit zugreifen möchtest.
Gut das mit dem IN_OUT is etwas blöde, aber das wird ja im Endeffekt auch nur wie Referenz behandelt.
 
Zurück
Oben