
- Matlab 教程
- MATLAB - 首頁
- MATLAB - 概述
- MATLAB - 特性
- MATLAB - 環境設定
- MATLAB - 編輯器
- MATLAB - 線上
- MATLAB - 工作區
- MATLAB - 語法
- MATLAB - 變數
- MATLAB - 命令
- MATLAB - 資料型別
- MATLAB - 運算子
- MATLAB - 日期和時間
- MATLAB - 數字
- MATLAB - 隨機數
- MATLAB - 字串和字元
- MATLAB - 文字格式化
- MATLAB - 時間表
- MATLAB - M 檔案
- MATLAB - 冒號表示法
- MATLAB - 資料匯入
- MATLAB - 資料輸出
- MATLAB - 資料歸一化
- MATLAB - 預定義變數
- MATLAB - 決策制定
- MATLAB - 決策
- MATLAB - If End 語句
- MATLAB - If Else 語句
- MATLAB - If…Elseif Else 語句
- MATLAB - 巢狀 If 語句
- MATLAB - Switch 語句
- MATLAB - 巢狀 Switch
- MATLAB - 迴圈
- MATLAB - 迴圈
- MATLAB - For 迴圈
- MATLAB - While 迴圈
- MATLAB - 巢狀迴圈
- MATLAB - Break 語句
- MATLAB - Continue 語句
- MATLAB - End 語句
- MATLAB - 陣列
- MATLAB - 陣列
- MATLAB - 向量
- MATLAB - 轉置運算子
- MATLAB - 陣列索引
- MATLAB - 多維陣列
- MATLAB - 相容陣列
- MATLAB - 分類陣列
- MATLAB - 元胞陣列
- MATLAB - 矩陣
- MATLAB - 稀疏矩陣
- MATLAB - 表格
- MATLAB - 結構體
- MATLAB - 陣列乘法
- MATLAB - 陣列除法
- MATLAB - 陣列函式
- MATLAB - 函式
- MATLAB - 函式
- MATLAB - 函式引數
- MATLAB - 匿名函式
- MATLAB - 巢狀函式
- MATLAB - Return 語句
- MATLAB - 無返回值函式
- MATLAB - 區域性函式
- MATLAB - 全域性變數
- MATLAB - 函式控制代碼
- MATLAB - 濾波函式
- MATLAB - 階乘
- MATLAB - 私有函式
- MATLAB - 子函式
- MATLAB - 遞迴函式
- MATLAB - 函式優先順序順序
- MATLAB - Map 函式
- MATLAB - Mean 函式
- MATLAB - End 函式
- MATLAB - 錯誤處理
- MATLAB - 錯誤處理
- MATLAB - Try...Catch 語句
- MATLAB - 除錯
- MATLAB - 繪圖
- MATLAB - 繪圖
- MATLAB - 繪製陣列
- MATLAB - 繪製向量
- MATLAB - 條形圖
- MATLAB - 直方圖
- MATLAB - 圖形
- MATLAB - 二維線圖
- MATLAB - 三維圖
- MATLAB - 格式化繪圖
- MATLAB - 對數座標軸繪圖
- MATLAB - 繪製誤差條
- MATLAB - 繪製三維等值線圖
- MATLAB - 極座標圖
- MATLAB - 散點圖
- MATLAB - 繪製表示式或函式
- MATLAB - 繪製矩形
- MATLAB - 繪製頻譜圖
- MATLAB - 繪製網格曲面
- MATLAB - 繪製正弦波
- MATLAB - 插值
- MATLAB - 插值
- MATLAB - 線性插值
- MATLAB - 二維陣列插值
- MATLAB - 三維陣列插值
- MATLAB - 多項式
- MATLAB - 多項式
- MATLAB - 多項式加法
- MATLAB - 多項式乘法
- MATLAB - 多項式除法
- MATLAB - 多項式的導數
- MATLAB - 變換
- MATLAB - 變換
- MATLAB - 拉普拉斯變換
- MATLAB - 拉普拉斯濾波器
- MATLAB - 高斯-拉普拉斯濾波器
- MATLAB - 逆傅立葉變換
- MATLAB - 傅立葉變換
- MATLAB - 快速傅立葉變換
- MATLAB - 二維逆餘弦變換
- MATLAB - 向座標軸新增圖例
- MATLAB - 面向物件
- MATLAB - 面向物件程式設計
- MATLAB - 類和物件
- MATLAB - 函式過載
- MATLAB - 運算子過載
- MATLAB - 使用者定義類
- MATLAB - 複製物件
- MATLAB - 代數
- MATLAB - 線性代數
- MATLAB - 高斯消元法
- MATLAB - 高斯-約旦消元法
- MATLAB - 簡化行階梯形式
- MATLAB - 特徵值和特徵向量
- MATLAB - 積分
- MATLAB - 積分
- MATLAB - 二重積分
- MATLAB - 梯形法則
- MATLAB - 辛普森法則
- MATLAB - 其他
- MATLAB - 微積分
- MATLAB - 微分
- MATLAB - 矩陣的逆
- MATLAB - GNU Octave
- MATLAB - Simulink
- MATLAB - 有用資源
- MATLAB - 快速指南
- MATLAB - 有用資源
- MATLAB - 討論
MATLAB - 函式優先順序順序
函式優先順序順序,簡單來說,就是 MATLAB 遵循的一套規則,用於決定在有多個同名函式或變數時使用哪個。就像一個等級制度,MATLAB 用它來確定選擇哪一個。
MATLAB 遵循以下優先順序順序:
變數
如果一個名稱在當前工作區中被識別為變數,MATLAB 將將其用作變數。
示例
x = 5; y = x + 2;
在這個示例中,x 是一個變數,MATLAB 識別它。
具有顯式匯入的函式或類
如果函式或類名稱與顯式匯入的名稱匹配,則它具有優先順序。
示例
import MyPackage.myFunction; result = myFunction();
這裡,來自 MyPackage 的 myFunction 被顯式匯入並使用。
巢狀函式
當前函式內的函式優先。
示例
function outer() x = 10; function inner() x = 5; end end
在這種情況下,inner 中的 x 優先於 outer 中的 x。
區域性函式
當前檔案內的函式具有優先順序。
考慮以下指令碼 myScript.m
示例
function result = myScript() x = 3; y = localFunction(); end function z = localFunction() z = 7; end
在這個示例中,使用同一檔案中的 localFunction。
使用萬用字元匯入的函式或類
如果一個函式與基於萬用字元的匯入匹配,則它具有優先順序,除了巢狀函式和區域性函式。
示例
import MyPackage.*; % Imports all functions in MyPackage result = myFunction();
這裡,如果 myFunction 透過萬用字元匯入,則它具有優先順序。
私有函式
名為“private”的子資料夾中的私有函式具有優先順序。
在 MATLAB 中,私有函式是指專門設計用於單個 MATLAB 指令碼或函式內部使用的函式,它們通常儲存在與使用它們的指令碼相同的資料夾中的名為“private”的子資料夾中。
% In the folder containing your script /private/myPrivateFunction.m
當您在與這個“private”子資料夾相同的資料夾中有一個指令碼時,位於“private”子資料夾中的任何函式都優先於位於其他地方的同名函式。
在上面的示例中,如果您在包含 myPrivateFunction.m 的“private”子資料夾的同一資料夾中有一個指令碼,則 MATLAB 將優先使用該指令碼中的 myPrivateFunction,這使得它成為組織和管理指令碼特定函式的一種便捷方式。
物件函式
物件函式由輸入引數的類決定。
object = MyClass(); result = object.myMethod();
在 MyClass 物件上呼叫的 myMethod 呼叫該特定物件函式。
MATLAB 根據輸入引數的類確定使用哪個物件函式。當您在物件上呼叫函式時,例如 object.myMethod(),MATLAB 將自動呼叫與該物件類關聯的方法。
這確保了物件的特定行為被執行,允許您與物件互動並根據其類和特徵修改它們。
在上面的示例中,result = object.myMethod();,myMethod 是一個在 MyClass 類物件上操作的函式,當建立該類的物件時,MATLAB 會相應地使用它。
類建構函式
建立物件時,類資料夾中的建構函式優先。
myObj = MyClass();
這裡,使用來自 @MyClass 資料夾的 MyClass 建構函式。
在 MATLAB 中的面向物件程式設計中,類建構函式是一個特殊的函式,用於建立類的例項,這些例項稱為物件。當您使用類建構函式建立物件時,MATLAB 將優先考慮位於類資料夾中的建構函式,而不是其他同名函式。
這確保了該類的物件被正確初始化,並且可以在建立期間進行自定義。在您的示例中,myObj = MyClass();,MATLAB 特別使用位於 @MyClass 資料夾中的建構函式函式來初始化 myObj 物件,使其可以使用定義的類屬性和方法。
載入的 Simulink 模型
如果 Simulink 模型已載入,則它們具有優先順序。
在 Simulink 的上下文中,如果您在 MATLAB 會話中打開了多個 Simulink 模型或載入了多個 Simulink 模型,那麼當您執行與 Simulink 相關的任務時,這些模型將優先於其他函式或變數。這確保了您的 Simulink 環境透過使用當前載入的模型中的元件和設定無縫執行,從而允許有效地進行建模和模擬,而不會受到無關函式或變數的干擾。它有助於維護 Simulink 工作的完整性和一致性。
當前資料夾中的函式
與您的指令碼相同的資料夾中的函式優先。
這意味著,如果您在與您的指令碼或 MATLAB 檔案相同的資料夾中儲存了函式,則這些區域性函式優先。MATLAB 將選擇當前資料夾中的函式,而不是 MATLAB 路徑上其他位置的同名函式。這有助於確保您的程式碼使用適合您專案需求的特定區域性函式。
路徑上其他位置的函式
MATLAB 路徑上的函式按其出現的順序進行評估。
當 MATLAB 無法在當前資料夾中或透過其他特定優先順序規則找到函式時,它會檢視放置在其搜尋路徑上的函式。MATLAB 路徑上的函式將被考慮,並且它們將按其在路徑上的出現順序進行評估。這提供了一種訪問和使用不在當前資料夾中的函式的方法,從而方便地在各種專案中處理庫和常用函式。