> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Variables

> Declare e inicialice variables en FlexiLayout language indicando un tipo y un nombre o con la palabra clave Let, que infiere el tipo a partir de una expresión.

Puede crear y usar variables en cualquier sección donde se introduzca código. El nombre de una variable no puede coincidir con el de una constante global ni con el de un elemento.

Las variables pueden crearse de una de estas dos formas.

<div id="declare-a-variable-by-specifying-its-type-and-name">
  ## Declare una variable indicando su tipo y nombre
</div>

La sintaxis es la siguiente:

```text theme={null}
[nombre del tipo] [nombre de la variable];
```

Por ejemplo:

```text theme={null}
Int a;
String s;
Logic isElementLongEnough;
```

Para usar el valor de una variable, primero debe inicializarla mediante un operador de asignación. Usar una variable que no se ha inicializado generará un error durante la compilación o la ejecución.

<div id="declare-and-initialize-a-variable-at-the-same-time">
  ## Declarar e inicializar una variable al mismo tiempo
</div>

Puede declarar e inicializar una variable con una expresión, por ejemplo, un nombre de elemento, una propiedad de un elemento u otra variable. La sintaxis es la siguiente:

```text theme={null}
Let [variable name] = [expression]
```

Por ejemplo:

```text theme={null}
Int a;a=3; Let a1 = a + 5;
Let myElement = SearchObjects.Group1.Group2.FirstItem
Let myRect = SearchObjects.Group1.Group2.FirstItem.Rect
```

FlexiLayout Studio crea una variable con el nombre especificado. El tipo de la variable queda definido implícitamente por el tipo de la expresión a la que hace referencia. Al mismo tiempo, la variable se inicializa con el valor de la expresión.

Las variables creadas de esta manera sirven como nombres abreviados prácticos para elementos profundamente anidados y otros objetos, lo que acorta la notación.
