Skip to main content

Alias

Un alias del tipo di dati è la dichiarazione di un tipo di dati definito dall'utente con cui viene generato un nome alternativo per un tipo di base, un tipo di dati o un blocco funzione.

Si effettua la dichiarazione del tipo di un alias in un DUT oggetto che crei nel progettoAggiungi oggettoTAGLIARE menu o nel menu contestuale di un'applicazione.

Per ulteriori informazioni, vedere: DUT

Sintassi

TYPE <identifier> : <data type name> ;

END_TYPE

Tabella 21. Tipi consentiti

<data type name>

  • Tipo di dati di base

  • Tipo di dati con dimensione specificata

  • Blocco funzionale



Esempio 234. Esempio

Tipo di dati alias per variabili di tipo STRING o ARRAY se richiedono una lunghezza specifica

Dichiarazione

TYPE FRAME : ARRAY[0..1499] OF BYTE; END_TYPE
TYPE SYMBOL : STRING(512); END_TYPE

Chiama

PROGRAM PLC_PRG
VAR
	frameF : FRAME;
	symbolS : SYMBOL;
END_VAR


Esempio 235. Esempio

Tipo di dati alias per variabili che richiedono un valore iniziale diverso da quello fornito dal compilatore

TYPE INDEX : DINT := -1; END_TYPE


Esempio 236. Esempio

Tipo di dati alias per variabili di un tipo specifico che dovrebbe applicare solo un sottoinsieme specifico di valori del tipo originale

{attribute 'qualified_only'}
VAR_GLOBAL CONSTANT
	c_diMaxRune : DINT := DINT#16#0010FFFF;
END_VAR
TYPE RUNE : DINT(0..GVL.c_diMaxRune); END_TYPE


Esempio 237. Esempio

Tipo di dati alias per i tipi di un altro namespace

Ad esempio, per i tipi di una libreria subordinata che dovrebbero essere disponibili nello spazio dei nomi corrente.

TYPE ENCODING: SBB.ENCODING; END_TYPE (*ENUM*)
TYPE RUNE : UTF8.RUNE;  END_TYPE (*SUBTYPE*)
TYPE INFO : STR.IFNFO;  END_TYPE (*STRUCT*)
TYPE IBuilder : SBB.IBuilder; END_TYPE (*INTERFACE*)
TYPE Tange: SBB.Range; END_TYPE (*FUNCTION_BLOCK*)

Suggerimento

Ciò significa che in molti casi, una libreria contenitore può essere omessa perché tutti i tipi di librerie subordinate diventano parte della propria libreria in questo modo.