Autor Thema: Konflikte mit Konstanten  (Gelesen 4506 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline hugo

  • Global Moderator
  • *****
  • Beiträge: 2 150
    • Profil anzeigen
Konflikte mit Konstanten
« am: 30. Oktober 2008, 11:41:15 »
Anwedner von OSCAT haben immer wieder von Konflikten mit anderen Bibliotheken gemeldet.
Die meisten dieser Namenskonflikte waren aus dem Bereich der globalen Konstanten.
viele Bibliotheken definieren z.B. ein PI oder andere Konstanten, wenn Namen doppelt verwendet werden gibt dies beim kompilieren einen Konflikt.

In OSCAT ab Release 3.xx haben wir ein komplett neue Methode für die Konstanten eingeführt die solche Konflikte in Zukunft minimieren wird.

Unsere Konstanten sind in Zukunft innerhalb von Strukturen definiert, wie z.B: constants_math.
im Bereich der globalen Variablen wird dann lediglich eine strukturierte variable vom typ constants_math definiert.
in unserem Falle ist das math : constants.math;
benutzt man nun beim programmieren diese konstanten tippt man lediglich math. und beim tippen des punktes gibt codesys / twincat eine drop down liste der zur verfügung stehenden konstanten aus. Man wählt die entsprechende Konstante mit der Maus und drückt enter.
es wird in zukunft die bereiche math, phys, setup, language, location als strukturen für diese konstanten geben.

die referenz math.pi zeigt dann auf die konstante PI ( 3.1415..)
oder wie folgt:
Y := math.pi * X;