2016-04-09 7 views

Antwort

2

Ein anonymous function ist ein kurzer Hand Weg, um eine Funktion zu definieren, . Es akzeptiert Eingabeargumente (pos und len) und erzeugt ein Ergebnis.

Das allgemeine Format ist:

func = @(input,arguments)some_action(input, arguments) 

Diese eine anonyme Funktion func genannt erstellt und kann dann verwendet werden (wie jede andere Funktion) durch Eingabeargumente

value1 = 1; 
value2 = 2; 
output = func(value1, value2) 

Die langfris vorbei Formfunktion Äquivalent über dem obigen Beispiel wäre:

function output = func(input, arguments) 
    output = some_action(input, arguments); 
end 

Also mit diesem Hintergrund können wir die anonyme Funktion in Ihrer Frage in eine normale Funktion

function output = rect2rng(pos, len) 
    output = ceil(pos):(ceil(pos) + len-1); 
end 

So auf dieser Basis brechen, rundet es pos bis zur nächsten ganzen Zahl ceil mit und erstellt dann eine Reihe von Länge len beginnend als dieser gerundete Wert.

Also, wenn wir einige Testeingaben übergeben, können wir es in Aktion sehen.

rect2rng(1.5, 3) 
%// [2 3 4] 

rect2rng(1, 3) 
%// [1 2 3] 

rect2rng(10, 5) 
%// [10 11 12 13 14]