CONST structure

STRUCT with immutable fields

https://github.com/rodyo/FEX-const

Ahora está siguiendo esta publicación

MATLAB's flexible nature is very convenient in most situations. However, this flexibility can also be the cause of hard-to-find bugs.
In many cases, it is desirable to have a data type which is CONST. That is, a datatype which cannot be changed after the first assignment. MATLAB has seen heavy criticism due to its lack of a CONST data type. Although the basic functionality of CONST variables can be achieved through a class with constant properties, that approach leaves much to be desired.

That is where this file comes in. It implements all the functionality of a basic, scalar MATLAB structure, but after a field has been added and assigned a value, that field can no longer be changed.

That means, it strikes a middle ground by offering the flexibility of adding fields dynamically, but disallowing *changing* of fields values.

A simple example session:

C = const; % empty const
C.myField = 'test'; % first assignment; OK
C.myField = 4; % ERROR!

Much more is possible; have a look at the function documentation inside const.m for more information.

Citar como

Rody Oldenhuis (2026). CONST structure (https://github.com/rodyo/FEX-const/releases/tag/v1.3), GitHub. Recuperado .

Categorías

Más información sobre Data Type Conversion en Help Center y MATLAB Answers.

Información general

Compatibilidad con la versión de MATLAB

  • Compatible con cualquier versión

Compatibilidad con las plataformas

  • Windows
  • macOS
  • Linux

No se pueden descargar versiones que utilicen la rama predeterminada de GitHub

Versión Publicado Notas de la versión Action
1.3

See release notes for this release on GitHub: https://github.com/rodyo/FEX-const/releases/tag/v1.3

1.2.0.0

Improved error handling a little bit
Refactored code for better extensibility

1.1.0.0

[linked to Github]

1.0.0.0

Para consultar o notificar algún problema sobre este complemento de GitHub, visite el repositorio de GitHub.
Para consultar o notificar algún problema sobre este complemento de GitHub, visite el repositorio de GitHub.