Код несколько Выходных параметров для клиента.NET C#

MATLAB® позволяет пользователям писать функции с несколькими выходными параметрами. Чтобы закодировать несколько выходных параметров в C#, используйте ключевое слово out.

Следующий код MATLAB берет несколько входных параметров (i1, i2, i3) и возвращает несколько выходных параметров (o1, o2, o3), после выполнения некоторых проверок и вычислений.

В этом примере первый ввод и вывод имеет тип double, и второй ввод и вывод имеет тип int. Третий ввод и вывод имеет тип char.

Чтобы развернуть эту функцию с программным обеспечением MATLAB Production Server™, необходимо написать соответствующий интерфейс метода в C#, с помощью ключевого слова out. Определение ключевого слова out заставляет аргументы быть переданными ссылкой. При использовании out гарантируйте, что и определение метода интерфейса и вызывающий метод явным образом задают ключевое слово out.

Типы данных выходного аргумента, перечисленные в вашем интерфейсе C# (ссылаемый с ключевым словом out), должны совпадать с типами данных выходного аргумента, перечисленными в вашей подписи MATLAB точно. Поэтому в интерфейсе C# (MultipleOutputsExample) и метод (TryMultipleOutputs) примеры кода, несколько выходных параметров перечислены (с соответствием с заданными типами данных) в том же порядке, как они перечислены в вашей функции MATLAB.

 Функция MATLAB multipleoutputs

 Интерфейс C# MultipleOutputsExample

 Метод C# TryMultipleOutputs

После создания нового экземпляра MWHttpClient и клиентского прокси, объявляются переменные и вызывающий метод, multipleoutputs.

В методе multipleoutputs значения, соответствующие, каждый объявил, что типы передаются для вывода (1.2 для double, 10 для int и hello для string) к output1.

Отметьте применяющие лучшые методы кодирования, проиллюстрированные этим примером:

  • И подпись функции MATLAB и подпись метода интерфейса C# используют имя multipleOutputs. И MATLAB и код C# обрабатывают три входных параметров и три выходных параметров.

  • Интерфейс.NET MATLAB поддерживает прямое преобразование от массива double C# до MATLAB массив double и от string C# до массива символов MATLAB. Для получения дополнительной информации смотрите Преобразование Данных с C# и Типами MATLAB и Преобразование Между Типами MATLAB и Типами C#.