Das Attribut 'const_replaced'
bewirkt, dass die Konstante im Code ersetzt wird, unabhängig von der Einstellung
der Compileroption „Konstanten ersetzen“.
Das Attribut hat nur eine Auswirkung für Variablen von skalaren Typen, aber nicht
für zusammengesetzte Typen wie Arrays und Strukturen.
Das Pragma {attribute 'const_non_replaced'}
fügen Sie entsprechend ein, um die Compileroption „Konstanten ersetzen“ explizit zu deaktivieren.
Dies bewirkt beispielsweise in der Symbolkonfiguration, dass die Konstante verfügbar
ist und trotz Compileroption exportiert werden kann.
Die Option „Konstanten ersetzen“ im Dialog „Projekteinstellungen“, Kategorie „Compile-Optionen“ ist für das ganze Projekt voreingestellt, weil Konstanten ersetzen in der Regel zu schnellerem Code und geringerem Speicherverbrauch führt.
Syntax:
{attribute 'const_replaced'}
{attribute 'const_non_replaced'}
Einfügeort: Zeile oberhalb der Deklarationszeile der globalen Variablen.
Beispiel
Die Konstanten iTestCon
und xTestCon
sind in der Symbolkonfiguration verfügbar, weil die Option „Konstanten ersetzen“ deaktiviert ist.
{attribute 'qualified_only'} VAR_GLOBAL CONSTANT {attribute 'const_non_replaced'} iTestCon : INT := 12; {attribute 'const_non_replaced'} xTestCon : BOOL := TRUE; rTestCon : REAL := 1.5; END_VAR VAR_GLOBAL iTestVar : INT := 12; xTestVar : BOOL := TRUE; END_VAR