1、在matlab中,每壹個對象都有壹個數字來標識,叫做句柄.當每次創建壹個對象時,matlab就為它建立壹個唯壹的句柄。
2、句柄中包含有該對象的相關信息參數,可以在後續程序中進行操作,改變其中的參數,以便達到不同的效果。
3、句柄與指針的區別在於:指針對應著壹個數據在內存中的地址,得到了指針就可以自由地修改該數據。而句柄不行,它是對象生成時系統指定的,是為了區別系統中存在的各個對象。
4、從數據類型上來看它只是壹個16位的無符號整數。句柄實際上是壹種指向某種資源的指針,但與指針又有所不同。“句柄”(handle),handle的本意是把柄,把手的意思。相當於C語言中的函數指針(入口地址),只不過句柄就用壹個唯壹的常整數來指出。
5、函數句柄提供壹種簡介訪問函數的手段,用戶可以很方便地調用其他函數:提供函數調用過程中的可靠性,減少程序涉及中的冗余,同時可以在使用函數的過程中保存函數相關的信息,尤其是關於函數執行的信息。
創建函數句柄使用 @ 或者 str2func 命令創建
函數句柄的創建: handle=@functionname ,handle 為所創建的函數句柄,functionname 為所創建的函數。或者 handle=str2func('functionname')
那麽使用函數句柄有什麽好處呢?
函數句柄的操作:
我的理解:句柄類似於對對象的引用(弱引用),可以通過句柄查看對象的屬性,也可以通過對句柄的調用來修改對象的相關屬性。函數句柄可以理解為函數指針,handle,”把手“。函數句柄壹般應用在匿名函數和對圖形對象設置相關樣式。
參考文章:
/s/blog_c0468c8f0101xbbu.html
blogs.com/weiweicf/p/5970497.html
/aiieno0/article/details/24785625