MATLAB-Klassen
Sie können Code für MATLAB-Funktionen generieren, die Wertklassen, Handle-Klassen und System objects verwenden. Mehr über Wert- und Handle-Klassen in MATLAB erfahren Sie unter Comparison of Handle and Value Classes. Mehr über System objects erfahren Sie unter What Are System Objects?.
Im MATLAB Programmcode zur Codegenerierung können Sie:
eine MATLAB-Wert- oder -Handle-Klasse im MATLAB Programmcode verwenden.
eine MATLAB-Wertklasse als Eingabeargument für einen MATLAB-Einstiegspunkt verwenden.
Beim Generieren von C Code werden MATLAB-Klassen als Strukturen dargestellt. Wenn Sie C++ Code generieren, besteht das Standardverhalten des Codegenerators darin, C++ Klassen für die MATLAB-Klassen zu erzeugen. Bei der Verwendung von Klassen in Ihrem MATLAB Programmcode für die Codegenerierung müssen Sie bestimmte Anwendungshinweise und Beschränkungen beachten.
Klassen
coder.ClassType | Represent set of MATLAB classes acceptable for input specification |
Objekte
coder.ClassSignature | Entry-point class for code generation (Tech Preview) (Seit R2026a) |
coder.FunctionSignature | Entry-point function or method for code generation (Tech Preview) (Seit R2026a) |
Funktionen
addMethod | Add method specification to coder.ClassSignature object (Tech
Preview) (Seit R2026a) |
Themen
Grundlagen zur Codegenerierung
- Class Limitations for Code Generation
Adhere to code generation restrictions when you use classes in MATLAB code for code generation. - Define Class Properties for Code Generation
Define the properties of value and handle classes in MATLAB code for code generation. - System Objects in MATLAB Code Generation
Special considerations for using System objects in code generated from MATLAB. - Code Generation for Handle Class Destructors
Use a handle class destructor in MATLAB code intended for code generation. - Generate C++ Code for MATLAB Classes
Generate a C++ class for a value class, handle class, or System object™ in your MATLAB code. - Generate Class Interface in C++ Code
Generate C++ code that is packaged into a class.
Verwenden einer MATLAB-Klasse als Einstiegspunkt (Tech Preview)
- Generate Standalone Code for Entry-Point Class (Tech Preview)
Use a MATLAB class as an entry-point for code generation. (Seit R2026a) - Generate C++ Executable for Entry-Point System Object in a Namespace (Tech Preview)
Use a System object in a namespace as an entry point for code generation. (Seit R2026a) - Generate and Use C++ Classes from Entry-Point Classes That Model a Physical System (Tech Preview)
Use generated entry-point C++ classes in a main function. (Seit R2026a)
Verwenden einer MATLAB-Klasse in einer MATLAB-Funktion
- Generate Code for MATLAB Functions That Use Value Classes
Use a value class in MATLAB code intended for code generation. - Generate Code for MATLAB Functions That Use Handle Classes
Use a handle class in MATLAB code intended for code generation. - Generate Code for MATLAB Functions That Use System Objects
Use a System object in MATLAB code for code generation. - Generate Code for MATLAB Functions That Use Singleton Classes
Use a singleton handle class in MATLAB code for code generation.
Übergeben einer MATLAB-Klasse als Eingabeargument für den Einstiegspunkt
- Specify Value Class Objects as Inputs
Specify that an entry-point input is an object of a value class.
Fehlersuche
Resolve Error: Handle Object Referenced by Persistent Variable
Troubleshoot error when using a persistent handle object.
Resolve Error: Nontunable Property Cannot Be Defined by Subscripted Assignment
Troubleshoot code generation failure when a System object uses a structure.
Resolve Error: Class Properties Must Be Fully Defined Before Use
Troubleshoot code generation error when class properties are not defined before use.
Resolve Error: Cannot Reference Handle Object Outside of Loop
Troubleshoot error when creating or allocating a handle object inside a
for-loop.
Resolve Error: Class Does Not Have Property
Troubleshoot issues when you assign a value to a property of a handle class that is returned by a method.
Resolve Error: Passing by Reference Not Supported for Some Properties
Troubleshoot error when you use certain types of properties with
coder.ref, coder.rref, or
coder.wref.
Resolve Error: Code Generator Failed to Produce C++ Destructor for MATLAB Class
Troubleshoot generation of standalone code for C++ destructor of a MATLAB class.
Resolve Error: Code Generation Does Not Support String and Object Arrays
Troubleshoot error when you use an object or string array in your MATLAB code.
Resolve Error: coder.varsize Not Supported for Class Properties
Troubleshoot code generation error when using coder.varsize
with properties of a MATLAB class.
