func2str

Создайте вектор символов из указателя на функцию

Синтаксис

c = func2str(fh)

Описание

пример

c = func2str(fh) создает вектор символов, c, который содержит имя функции, сопоставленное с указателем на функцию, fh. Если fh сопоставлен с анонимной функцией, func2str возвращает вектор символов, который представляет анонимную функцию.

Примеры

свернуть все

Создайте указатели на функцию и для функции cos и для анонимной функции, и затем преобразуйте их в векторы символов.

fh = @cos;
c = func2str(fh)
c = 
'cos'
fh = @(x,y)sqrt(x.^2+y.^2);
c = func2str(fh);

disp(['Anonymous function: ' c])
Anonymous function: @(x,y)sqrt(x.^2+y.^2)

Создайте функцию, которая оценивает указатель на функцию для одного входа.

Создайте следующую функцию в файле, evaluateHandle.m, в вашей рабочей папке.

function evaluateHandle(fh,x)

y = fh(x);
str = func2str(fh);

disp('For input value: ')
disp(x)
disp(['The function ' str ' evaluates to:'])
disp(y)

end

Используйте указатель на функцию, чтобы выполнить функцию sin в pi/2.

fh = @sin;
x = pi/2;
evaluateHandle(fh,x)
For input value: 
    1.5708

The function sin evaluates to:
     1

Используйте указатель на функцию, чтобы оценить для заданной матрицы, A.

fh = @(x) x.^2+7;
A = [1 2;0 1];
evaluateHandle(fh,A)
For input value: 
     1     2
     0     1

The function @(x)x.^2+7 evaluates to:
     8    11
     7     8

Входные параметры

свернуть все

Обработайте, чтобы преобразовать в вектор символов, заданный как указатель на функцию.

Советы

  • Вы теряете переменные, сохраненные в указателе на функцию, когда вы преобразовываете его в вектор символов с помощью func2str, и затем обратно в указатель с помощью str2func.

Расширенные возможности

Представлено до R2006a