Когда вы публикуете интерфейс, clibgen.generateLibraryDefinition функция вставляет комментарии заголовочного файла C++ и другой текст по умолчанию о классах и функциях. doc функционируйте отображает этот текст пользователю. Можно отключить вставку комментариев C++ или изменить текст путем редактирования файла определения.
Примечание
Если вы уже загрузили clib пакет, например, путем вызова doc или вызывая конструктора класса, затем необходимо перезапустить MATLAB®, чтобы изменить интерфейс.
Если эти общедоступные построения содержат комментарии C++, то MATLAB добавляет комментарии к описаниям MATLAB по умолчанию.
Функции и аргументы
Функции членства и аргументы
Классы и структуры
Элементы данных
Перечисления и enumerants
MATLAB читает стиль Doxygen, комментарии C++, но не является синтаксическим анализатором Doxygen. Например, процессы MATLAB Doxygen @brief и @details команды, чтобы добавить содержимое в класс или функциональное описание. MATLAB читает @param и @return команды, чтобы увеличить описания аргумента. MATLAB использует содержимое @code команды, чтобы обеспечить примеры кода. В рамках любой команды Doxygen MATLAB игнорирует теги форматирования. Например, синтаксический анализатор Doxygen отображает word как показано в этом теге <b>word</b> полужирным шрифт. MATLAB просто включает текст <b>word</b> в справке. MATLAB не отображает теги HTML <code>, </code>, <p>, </p>, и <br>.
По умолчанию MATLAB копирует комментарии C++ с заголовка библиотеки и исходных файлов в Description и, при наличии, DetailedDescription аргументы для этих методов. Перечисления опционально имеют EnumerantDescriptions аргументы. Можно рассмотреть и отредактировать содержимое с помощью .mlx файл определения библиотеки.
Description, DetailedDescription, и EnumerantDescriptions аргументы принимают значения строки. Можно вручную обновить текст в этих значениях. Например, в .hpp может быть больше содержимого файл, чем MATLAB включает по умолчанию. Или вы можете хотеть включать примеры кода для своего варианта использования.
Если вы не хотите копировать комментарии C++ с заголовка и исходных файлов, то вызовите clibgen.generateLibraryDefinition с набором аргумента 'GenerateDocumentationFromHeaderFiles' к false. Можно все еще ввести текст в Description аргумент в файле определения.
Этот пример использует встроенный интерфейс, Публикуют Интерфейс к Библиотеке C++ Только для заголовка. Для другого примеры смотрите, Изменяют Справку Библиотеки.
Если вы создали интерфейс, перемещение к папке с defineschool.mlx файл и school папка с интерфейсной библиотекой. В качестве альтернативы создайте интерфейс:
copyfile(fullfile(matlabroot,'extern','examples','cpp_interface','school.hpp'),'.','f') clibgen.generateLibraryDefinition('school.hpp') build(defineschool) addpath("school") summary(defineschool)
Текст справки по умолчанию для класса Person Representation of C++ class Person. Чтобы отобразить справку, введите:
doc clib.schoolClasses contained in clib.school: Person - clib.school.Person Representation of C++ class Person Teacher - clib.school.Teacher Representation of C++ class Teacher Student - clib.school.Student Representation of C++ class Student
Чтобы изменить этот текст, отредактируйте defineschool.mlx. Ищите текст Representation of C++ class Person.
Измените "Description" значение. Изменение:
"clib.school.Person Representation of C++ class Person."
к:
"clib.school.Person Class defined by name and age."
Сохраните файл.
Чтобы восстановить библиотеку, перезапустите MATLAB. Перейдите к папке, содержащей defineschool.mlx. Удалите существующий интерфейсный файл.
delete school\*.dllСоздайте интерфейс и обновите путь.
build(defineschool)
addpath school
Отобразите обновленную справку.
doc clib.schoolClasses contained in clib.school: Person - clib.school.Person Class defined by name and age Teacher - clib.school.Teacher Representation of C++ class Teacher Student - clib.school.Student Representation of C++ class Student
Пример, описанный в, Изменяет Справку Библиотеки, показывает сгенерированную справку для XMLPlatformUtils.Initialize метод в библиотеке синтаксического анализатора Apache™ Xerces-C ++ XML. Это содержимое прибывает из Apache проект Xerces, https://xerces.apache.org, и лицензируется в соответствии с лицензией Apache 2.0, https://www.apache.org/licenses/LICENSE-2.0.
MATLAB использует комментарии C++ в PlatformUtils.hpp файл.
/** @name Initialization and Panic methods */
//@{
/** Perform per-process parser initialization
*
* Initialization <b>must</b> be called first in any client code.
*
* @param locale The locale to use for messages.
*
* The locale is set if the Initialize() is invoked for the very first time,
* to ensure that each and every message loader, in the process space, share
* the same locale.
*
* All subsequent invocations of Initialize(), with a different locale, have
* no effect on the message loaders, either instantiated, or to be instantiated.
*
* To set to a different locale, client application needs to Terminate() (or
* multiple Terminate() in the case where multiple Initialize() have been invoked
* before), followed by Initialize(new_locale).
*
* The default locale is "en_US".
*
* @param nlsHome User specified location where MsgLoader retrieves error message files.
* the discussion above with regard to locale, applies to nlsHome as well.
*
* @param panicHandler Application's panic handler, application owns this handler.
* Application shall make sure that the plugged panic handler persists
* through the call to XMLPlatformUtils::Terminate().
*
* @param memoryManager Plugged-in memory manager which is owned by the
* application. Applications must make sure that the
* plugged-in memory manager persist through the call to
* XMLPlatformUtils::Terminate()
*/
static void Initialize(const char* const locale = XMLUni::fgXercescDefaultLocale
, const char* const nlsHome = 0
, PanicHandler* const panicHandler = 0
, MemoryManager* const memoryManager = 0);
После создания интерфейса в примере отобразите справку MATLAB для Initialize метод.
help clib.MyXercesLibrary.xercesc_3_1.XMLPlatformUtils.Initialize clib.MyXercesLibrary.xercesc_3_1.XMLPlatformUtils.Initialize Method of C++ class xercesc_3_1::XMLPlatformUtils.
Perform per-process parser initialization
This content is from the external library documentation.
Initialization <b>must</b> be called first in any client code.
Inputs
locale read-only string
locale The locale to use for messages.
nlsHome read-only string
nlsHome User specified location where MsgLoader retrieves error message files.
the discussion above with regard to locale, applies to nlsHome as well.
panicHandler clib.MyXercesLibrary.xercesc_3_1.PanicHandler
panicHandler Application's panic handler, application owns this handler.
Application shall make sure that the plugged panic handler persists
through the call to XMLPlatformUtils::Terminate().
memoryManager clib.MyXercesLibrary.xercesc_3_1.MemoryManager
memoryManager Plugged-in memory manager which is owned by the
application. Applications must make sure that the
plugged-in memory manager persist through the call to
XMLPlatformUtils::Terminate()
No outputsbuild | clibgen.generateLibraryDefinition