Definizione della funzione
R2025bEsistono delle considerazioni particolari quando si creano funzioni di MATLAB® destinate all'accelerazione in virgola fissa. Queste considerazioni particolari includono alcune restrizioni nell'utilizzo di varargin e varargout, delle funzioni ricorsive, delle funzioni anonime e delle funzioni annidate. Per generare codice per le funzioni ricorsive di MATLAB, il generatore di codice utilizza la ricorsione a tempo di compilazione o la ricorsione a tempo di esecuzione. Per produrre codice C/C++ efficiente, il generatore di codice crea talvolta più versioni di una funzione, chiamate specializzazioni della funzione. In alcuni casi, è possibile impedire al generatore di codice di creare le specializzazioni della funzione utilizzando coder.ignoreConst (MATLAB Coder). Durante la generazione di una funzione MEX, è possibile escludere la generazione di codice per una funzione specifica nel codice MATLAB e utilizzare invece il motore di MATLAB per eseguire la chiamata. A tal fine, utilizzare il costrutto coder.extrinsic.
Funzioni
coder.extrinsic | Declare extrinsic function |
coder.ignoreConst | Prevent use of constant value of expression for function specializations |
coder.mustBeConst | Validate that value is a compile-time constant (Da 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 (Da R2023a) |
coder.write | Create data files that the generated code reads at run time (Da R2023a) |
Argomenti
- Direttiva di compilazione %#codegen
Indicare che una funzione di MATLAB è destinata alla generazione di codice.
Risoluzione dei problemi