http://wenku.baidu.com/view/cc9b4308bb68a98271fefa6f.html (Matlab北航教程)

CH 7.6 函數句柄
 
函數句柄是matlab的一個數據類型,保存函數的路徑、視野、函數名及重載方式等。
使用函數句柄的優點
 
1.使一些泛函指令工作更可靠
 
2.使函數調用象變量引用一樣方便
 
3.可獲得同名重載函數的信息
 
4.可在更大范圍內調用各種函數,提高軟件的重用性
 
5.提高函數調用速度。

一、函數句柄的創建與觀察
 
1.創建
    handlef=@fname;         
    handlef=str2func(‘fname’)
   例如:fhandle = @sin;
   sin是matlab中自帶的正弦函數,得到的輸出變量fhandle為sin函數的句柄。可以利用fhandle來調用sin函數,例如下面的代碼:
   fhandle(0)
  上面語句得到的輸出代碼如下:
  ans = 0
  實際上,該程序中的語句fhandle(0)相當于語句sin(0)。
二、函數句柄的應用
 
[out1,ou2,…]=fname(in1,in2,…)
也可通過函數句柄來完成函數運算:
 
[out1,ou2,…]= handlef(in1,in2,…)
 [out1,ou2,…]=feval(handlef,in1,in2,…)


http://www.ilovematlab.cn/thread-23048-1-1.html

matlab 函數句柄@的介紹_什么是函數句柄

覺得自己很少用函數句柄,但是經常遇到,所以在這里總結一下。
函數句柄:是包含了函數的路徑、函數名、類型以及可能存在的重載方法。
函數句柄必須通過專門的定義創建的,而一般的圖像的句柄是自動建立的
創建函數句柄使用@或者str2func命令創建

執行sin函數     feval
feval('sin',pi/2) %
matlab幫助 feval 既可以,可以不必關心這個函數的使用
ans =
     1


那么使用函數句柄有什么好處呢?
1
、提高運行速度。因為matlab對函數的調用每次都是要搜索所有的路徑,從set path中我們可以看到,路徑是非常的多的,所以如果一個函數在你的程序中需要經常用到的話,使用函數句柄,對你的速度會有提高的。
2
使用可以與變量一樣方便。比如說,我再這個目錄運行后,創建了本目錄的一個函數句柄,當我轉到其他的目錄下的時候,創建的函數句柄還是可以直接調用的,而不需要把那個函數文件拷貝過來。因為你創建的function handles中,已經包含了路徑,比如說我創建了一個fun
h_fun=str2func('rei');
可以用functions來查看這個function結果果然已經包括了路徑。

functions(h_fun)
ans =
    function: 'rei'
        type: 'simple'
        file: 'G:\program\serial232\rei.m'