Ограничения массива datetime для генерации кода

Когда вы создаете datetime массивы в коде MATLAB®, который вы предназначаете для генерации кода, необходимо задать значения при помощи datetime функция. Смотрите Даты и Время (MATLAB).

Для datetime массивы, генерация кода не поддерживает следующие входные параметры и операции:

  • Разреженные матрицы.

  • Вводы текста. Например, задавая вектор символов, когда входной параметр производит ошибку.

    function d = foo() %#codegen
        d = datetime('2019-12-01');
    end
    
  • 'Format' аргумент пары "имя-значение". Вы не можете задать формат отображения при помощи datetime функция, или путем установки Format свойство datetime массив. Чтобы использовать определенный формат отображения, создайте datetime массив в MATLAB, затем передайте его как входной параметр к функции, которая предназначается для генерации кода.

  • 'TimeZone' аргумент пары "имя-значение". Весь datetime массивы, созданные в коде, предназначенном для генерации кода, являются незонными.

  • Установка свойств компонентов времени. Например, установка Hour свойство в следующем коде производит ошибку:

    d = datetime;
    d.Hour = 2;
    
  • Рост присвоением. Например, присвоение значения вне конца массива производит ошибку.

    function d = foo() %#codegen
        d = datetime(2019,1:12,1,12,0,0);
        d(13) = datetime(2020,1,1,12,0,0);
    end
    
  • Удаление элемента. Например, присвоение пустого массива к элементу производит ошибку.

    function d = foo() %#codegen
        d = datetime(2019,1:12,1,12,0,0);
        d(1) = [];
    end
    
  • Преобразование datetime значения к тексту при помощи charcellstr, или string функции.

Ограничения, которые применяются к классам также, применяются к datetime массивы. Для получения дополнительной информации см. Определение Классов MATLAB для Генерации кода (MATLAB Coder).

Смотрите также

|

Похожие темы