namedargs2cell

Converte um struct escalar em um cell array de pares nome-valor.

Categoria: Programming > Functions

Sintaxe

C = namedargs2cell(S)

Retorna um cell array linha {nome1, valor1, nome2, valor2, ...} montado a partir dos campos de S.

Descrição

Muitas funções recebem opções como pares nome-valor no final da chamada. Manter as opções em um struct é conveniente para padrões e combinações, e namedargs2cell converte esse struct na forma que a função espera. Expandir o resultado como lista separada por vírgulas, f(x, C{:}), repassa as opções.

Os nomes dos campos são retornados como vetores de caracteres e os valores são guardados sem alteração.

Argumentos de entrada

S
Struct escalar. Cada nome de campo vira um nome e seu conteúdo, o valor correspondente.

Argumentos de saída

C
Cell array de tamanho 1 por 2n para um struct com n campos, na ordem dos campos.

Exemplo

Repassando opções guardadas em um struct

opts = struct('LineWidth', 2, 'Color', 'r');
C = namedargs2cell(opts)
plot(1:5, (1:5).^2, C{:})
Saída
C = 1×4 cell

    {'LineWidth'}    {[2]}    {'Color'}    {'r'}

Veja também

struct2cell cell2struct fieldnames inputParser