您可以创建自己的匿名函数处理类,它将模仿此功能,仅为此对象类型隐藏帮助函数.

我已经编写了下面的类,但是首先会显示用法,它只需要在你的路径上有一个类,并稍微调整你声明匿名函数的方式:

我们也可以覆盖此类类型的subsref函数,然后可以使用()语法直接调用函数句柄,而不是像建议的那样索引到结构by Nicky’s answer.

请注意,您必须传递句柄,而不是函数名称(即help(f)或f.help,not help f或help(‘f’)).你必须完全隐藏帮助功能以克服这个限制,我不会真的赞同!

用法

>> f = anon( @() disp( 'Hi!' ), 'This function displays "Hi!"' );

>> help( f )

Input is a value of type function_handle.

This function displays "Hi!"

>> f()

Hi!

>> f = anon( @(x) x + 10, 'Adds 10 to the input' );

>> help( f )

Input is a value of type function_handle.

Adds 10 to the input

>> f(15:17)

ans =

[ 25, 26, 27 ]

>> f.func = @(x) x + 15;

>> f.helpStr = 'Adds 15 to the input'

>> f(15:17)

ans =

[ 30 31 32 ]

如果未指定,则保留默认函数句柄帮助

>> f = anon( @(x) x + 10 );

>> help( f )

Input is a value of type function_handle.

班级代码

该类可以使用一些额外的输入检查等,但原则上工作!

classdef anon < handle

properties ( Access = public )

helpStr % String to display on help( obj )

func % Function handle (meant for anonymouse functions

end

methods

function obj = anon( func, helpStr )

assert( isa( func, 'function_handle' ) ); % Input check

obj.func = func;

if nargin > 1

obj.helpStr = helpStr; % Set help string

end

end

function help( obj )

h = help( obj.func ); % Normal behaviour.

if ~isempty( obj.helpStr )

% Custom string (does nothing if empty)

fprintf( '%s%s\n', h, obj.helpStr );

else

disp( h );

end

end

function varargout = subsref( obj, s )

% Need to override the subsref behaviour to enable default

% function calling behaviour!

switch s(1).type

case '()'

[varargout{1:nargout}] = obj.func( s(1).subs{:} );

otherwise

[varargout{1:nargout}] = builtin('subsref', obj, s);

end

end

end

end

myfunc matlab,为matlab匿名函数设置’help’相关推荐

  1. matlab 匿名函数 diff,在MATLAB中使用匿名函数会降低性能...其他人是否注意到了这一点?...

    在MATLAB中使用匿名函数会降低性能...其他人是否注意到了这一点? 为了重构我的MATLAB代码,我认为我会在函数编程的启发下将函数作为参数传递(MATLAB称为匿名函数). 但是,性能似乎受到了 ...

  2. matlab匿名函数求导,Matlab中的匿名函数的使用

    转载自:http://blog.sina.com.cn/s/blog_71fb42f70100uyfx.html#commonComment 1.匿名函数的基本用法. handle = @(argli ...

  3. matlab匿名函数求导,MATLAB中的匿名函数和Python中的匿名函数

    在MATLAB和Python中都有一个叫做匿名函数的东西,在这里对比一下. 一. MATLAB中这样来定义一个匿名函数: f = @(x1, x2, ...) exper @后面的括号里面是自变量,然 ...

  4. Matlab中的匿名函数

    目录 匿名函数 什么是匿名函数? 表达式中的变量 多个匿名函数 不带输入的函数 带有多个输入或输出的函数 匿名函数的数组 匿名函数 什么是匿名函数? ​        匿名函数是不存储在程序文件中.但 ...

  5. Matlab中的匿名函数如何使用?

    功能 匿名函数非常简单,函数体非常短且无需单独将函数保存到一个文件.下面请看具体示例. 示例 假设一个项目要多次用到一个求和的数学表达式,而且每次代入到这个表达式的参数都不一样,数学表达式如下: x ...

  6. matlab匿名函数解方程,matlab 数学建模 匿名函数@

    匿名函数的基本用法: handle = @(arglist)anonymous_function 其中handle为调用匿名函数时使用的名字.arglist为匿名函数的输入参数,可以是一个,也可以是多 ...

  7. matlab匿名函数方式定义函数,在matlab中定义函数添加@(x)——匿名函数

    f=@(x)acos(x) 表示 f 为函数句柄,@是定义句柄的运算符.f=@(x)acos(x) 相当于建立了一个函数文件:% f.mfunction  y=f(x)y=acos(x); @是匿名函 ...

  8. JavaScript 匿名函数与闭包

    匿名函数与闭包 匿名函数 闭包 概念 相关知识点 闭包中的this 循环函数中的匿名函数和闭包 循环函数中的匿名函数 循环函数中的闭包 模仿块级作用域 私有变量 静态私有变量 匿名函数 没有函数名的函 ...

  9. matlab 设置为匿名函数,MATLAB匿名函数

    本文概述 匿名函数是简单的(单行)用户定义函数, 无需创建单独的函数文件(M文件)即可进行定义.可以在命令窗口中, 脚本文件中或用户定义的函数中定义匿名函数. 通过键入以下命令来生成匿名函数: 其中f ...

最新文章

  1. python lstm_python-Keras中LSTM的补充
  2. php内置类,yii2学习教程之5种内置行为类详解
  3. 本地创建分支push到github
  4. Windows Phone 7(accelerometer)重力感应编程
  5. magento 优化 php.ini,PHP.ini配置文件(中文) | Magento UI
  6. volatile与多线程
  7. WayOs 聊天软件号码登记器,让找人变得更简单
  8. 简单python脚本实例-python下10个简单实例代码
  9. 技术晨读_20160217
  10. Xcode快捷键—图文详解
  11. CSDN下载免费获取积分
  12. 【Android游戏开发详细过程2】Android平台飞机大战游戏APP设计与实现
  13. 这个录屏神器好用哭了!
  14. knowladge_网站开发_Sandboxie沙盒
  15. 华为鸿蒙研究多久了,鸿蒙华为研发了多少年_华为鸿蒙意义
  16. win7 管理iphone日历_iPhone和Windows同步文件,这7个技巧让你的效率成倍增加
  17. ego电商项目:Rmi远程服务发布
  18. Matlab 仿真——直流电机速度控制(2)系统分析
  19. “换头术”所引发的“长生不死”
  20. html效果浮窗效果,jQuery简单实现中间浮窗效果

热门文章

  1. vSAN其实很简单-什么!vSAN主机启动慢?
  2. php 时间戳存储 原因,将php文件中的unix时间戳存储到mysql中(store unix timestamp from php file into mysql)...
  3. python实现k core算法_python实现密度聚类(模板代码+sklearn代码)
  4. mamp安装php扩展,向MAMP添加GMP PHP扩展
  5. pg库sharelock_PostgreSQL 行锁解读
  6. 02_03 JSP内置对象之page
  7. 电子商务系统的设计与实现(五):账务系统的功能接口设计
  8. PHP中CURL方法curl_setopt()函数的一些参数
  9. POJ 3481 treap
  10. RMAN异机恢复遭遇ORA-01547、ORA-01152、ORA-01110错误案例