[英]Use workspace variables in a Matlab function
我想使用Matlab函數中加載到我的工作區中的數據。 這是我職能的開始。
function [totalProfit] = compute(p,exit)
%% Declaration of variables
entry=0;
T = length(data);
.
.
.
end
我收到一個錯誤:
未定義的函數或變量“數據”。
錯誤在哪里?
變量數據可能是在函數外部定義的,因此超出了范圍。
將data
作為參數傳遞進行compute
,然后在函數內部可用。
冉是正確的,但我想提一提。 通常,只能在函數內部使用作為參數傳遞給函數的變量,因此,如果要在函數內部使用現有變量,請將其作為輸入參數傳遞。
可以創建全局變量,使您可以在函數內部使用它們而無需將它們作為參數傳遞,但這通常不是編寫代碼的最佳方法。 我使用全局變量的時候就是我從一個腳本中調用多個函數,並且我有一些常數將被所有函數使用(例如,重力是一個常見的常數)。 全局變量的另一種選擇是使用結構,將要傳遞給函數的變量包含在其中,因此您只需要一個額外的輸入參數,但是仍然要小心一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.