Переменное количество аргументов

Примечание

Этот пример аналогичен Интеграции Простой Функции MATLAB, за исключением того, что MATLAB® функция, которая будет инкапсулирована, принимает переменное количество аргументов вместо одного.

Цель примера состоит в том, чтобы показать вам следующее:

  • Как использовать MATLAB Compiler SDK™ продукт для преобразования функции MATLAB, drawgraph, который принимает переменное количество аргументов в метод класса .NET (Plotter) и перенести класс в сборку .NET (VarArgComp). The drawgraph function (который можно вызвать как метод Plotter класс) отображает график входных параметров.

  • Как получить доступ к компоненту в приложении C # (VarArgApp.cs) путем создания экземпляров Plotter класс и использование MWArray для представления данных.

    Примечание

    Для получения информации об этих классах преобразования данных смотрите MATLAB MWArray Class Ссылка, доступный в matlabroot\ help\dotnetbuilder\MWArrayAPI папка, где matlabroot представляет вашу папку установки MATLAB

  • Как создать и запустить VarArgDemoApp приложение, с использованием Visual Studio® Среда разработки .NET.

Пошаговая процедура

  1. Если вы еще не сделали этого, скопируйте файлы для этого примера следующим образом:

    1. Скопируйте следующую папку, которая поставляется с продуктом MATLAB, в вашу рабочую папку:

      matlabroot\toolbox\dotnetbuilder\Examples\VSVersion\NET\VarArgExample
      
    2. В командной строке MATLAB, cd на новый VarArgExample подпапка в рабочей папке.

  2. Напишите функции MATLAB, так же как и любую функцию MATLAB.

    Код для функций в этом примере следующий:

     drawgraph.m

     extractcoords.m

    Этот код уже находится в вашей рабочей папке в \VarArgExample\VarArgComp\.

  3. Из галереи Apps MATLAB откройте приложение Library Compiler.

  4. Создайте .NET компонент. Для получения дополнительной информации см. инструкции в разделе «Создание сборки .NET и создание приложения .NET». Используйте следующую информацию:

    Имя проектаVarArgComp
    Имя классаPlotter
    Файл для компиляцииextractcoords.m   drawgraph.m

  5. Запись исходного кода для приложения, которое обращается к компоненту.

    Пример применения для этого примера приведен в VarArgExample\VarArgCSApp\VarArgApp.cs.

    Список программ показан здесь.

     VarArgApp.cs

    Программа делает следующее:

    • Инициализирует три массива (colorSpec, data, и coords) использование MWArray библиотека классов

    • Создает Plotter объект

    • Вызывает extracoords и drawgraph методы

    • Использует MWNumericArray для представления данных, необходимых для методов

    • Использует try-catch блок для поимки и обработки любых исключений

    Следующие операторы являются альтернативными способами вызова drawgraph метод:

    data= (MWNumericArray)plotter.drawgraph(colorSpec, 
                    coords[0], coords[1], coords[2],coords[3], coords[4]);
    ...
    data= (MWNumericArray)plotter.drawgraph((MWArray)colorSpec, coords);
    
  6. Создайте VarArgApp приложение с использованием Visual Studio .NET.

    1. The VarArgCSApp папка содержит файл проекта Visual Studio .NET для этого примера. Откройте проект в Visual Studio .NET двойным кликом мыши VarArgCSApp.csproj в Windows® Исследователь. Вы также можете открыть его с рабочего стола, щелкнув правой кнопкой мыши VarArgCSApp.csproj > Open Outside MATLAB.

    2. Добавьте ссылку на MWArray компонент, который matlabroot\ toolbox\dotnetbuilder\bin\ architecture\framework_version\mwarray.dll.

    3. Добавьте или, при необходимости, исправьте местоположение ссылки на VarArgComp компонент, созданный на предыдущем шаге. (Компонент, VarArgComp.dll, находится в \VarArgExample\VarArgComp\x86\v4.0\debug\distrib подпапка рабочей области.)

  7. Создайте и запустите приложение в Visual Studio .NET.