La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.
Définition de fonction
R2026aLorsque vous créez des fonctions MATLAB® destinées à être utilisées dans un bloc MATLAB Function, vous devez prendre en compte certains éléments. Parmi ces éléments, citons certaines restrictions lorsque vous utilisez varargin et varargout, des fonctions récursives, des fonctions anonymes et des fonctions imbriquées. Pour générer du code pour des fonctions récursives MATLAB, le générateur de code utilise la récursion au moment de la compilation ou en cours d’exécution. Pour produire du code C/C++ efficace, le générateur de code crée parfois plusieurs versions d’une fonction, appelées spécialisations d’une fonction. Dans certains cas, vous pouvez éviter que le générateur de code ne crée de spécialisations d’une fonction avec coder.ignoreSize et coder.ignoreConst. Vous pouvez contourner la génération de code d’une fonction spécifique dans votre code MATLAB et utiliser à la place le moteur MATLAB pour exécuter l’appel. Pour ce faire, utilisez la construction coder.extrinsic.
Blocs
| MATLAB Function | Include MATLAB code in Simulink models | |
| MATLAB System | Include System object in model |
Fonctions
coder.extrinsic | Declare extrinsic function |
coder.ignoreSize | Prevent code generator from creating function specializations for constant-size expressions |
coder.ignoreConst | Prevent use of constant value of expression for function specializations |
coder.mustBeConst | Validate that value is a compile-time constant (depuis R2023b) |
coder.unroll | Unroll for-loop by making a copy of
the loop body for each loop iteration |
coder.sameSizeBinaryOp | Apply element-wise binary operations without implicit expansion |
coder.noImplicitExpansionInFunction | Disable implicit expansion within the specified function in the generated code |
coder.read | Read data files at run time in generated code (depuis R2023a) |
coder.write | Create data files that the generated code reads at run time (depuis R2023a) |
Rubriques
- Effects of Implicit Expansion on Generated Code (MATLAB Coder)
Implicit expansion in the generated code can affect output sizes, code size, and performance.
- Control Implicit Expansion in Generated Code (MATLAB Coder)
Disable implicit expansion globally, for specific functions, or for specific operations.
Résolution des problèmes
Résoudre l’erreur : tableaux de tailles incompatibles (MATLAB Coder)
Résoudre les erreurs d’incompatibilité de taille qui se produisent pendant la génération de code.