2017-08-14 3229 views
0

我是matlab新手。有人可以告訴我從下面的代碼是什麼3點(...)意味着?3點是什麼意思(...)在MATLAB中?

defaults = struct(... 
'ThresholdDelta', 5*190/255, ... 
'RegionAreaRange', [180 1000], ... 
'MaxAreaVariation', 0.25,... 
'ROI', [1 1 imgSize(2) imgSize(1)]); 

回答

1

的三個點平均線延續。

所以語法:

defaults = struct(... 
'ThresholdDelta', 5*190/255); 

是嚴格等同於:

defaults = struct('ThresholdDelta', 5*190/255); 

Matlab的表達式通常在該行的末尾端,除非它們特異性地與...繼續。這樣的語法:

defaults = struct(
'ThresholdDelta', 5*190/255); 

產生一個錯誤(Expression or statement is incorrect--possibly unbalanced (, {, or [.)。

然而,對於上述規則,有一個例外:在數組構建運算符[]內接受一條新行而不需要...,它類似於冒號;。例如:

>> a = [1 2  % Use shift+Enter in the command line to go start a new line 
3 4] 

a = 

    1  2 
    3  4 
+0

非常感謝您的解釋。 – Dominic

+0

最後一行對我含糊不清。你說線路總是在數組建立操作符內繼續,不需要'...'。但是我第一次讀它時,我認爲它說線陣不能在數組構建運算符中繼續使用'...'。我的不好,但增加一兩句話會使它真正毫不含糊。 – Cecilia

+0

@Cecilia我已經更新了我的答案,使其更清晰。 – Ratbert