Я считаю, что у него нет особого имени. Вы просто получаете доступ к первому элементу возвращенного массива. Во многих языках нет ничего особенного в функции, которая возвращает массив.
В вашем случае вы не применяете оператор []
(индексация) к вызову функции . Вместо этого вы применяете его к возвращенному массиву. С приоритетом это выглядит так.
var firstElement = ( getSomeValues() )[0];
Так что в этом нет ничего особенного.
Однако есть еще один способ получения первого элемента, связанный с функциональным программированием. Например:
($first_value, @rest_of_list) = getSomeValues(); # Perl
let first::rest = getSomeValues () in ... (* OCaml *)
Это сохраняет первое значение списка (технически, а не массива) в $first_value
, а остальные сохраняются в переменной массива. Эта переменная массива может быть опущена, и тогда вы получите только первое значение.
($first_value) = getSomeValues(); # Perl
let first::_ = getSomeValues () in ... (* OCaml *)
Более общей концепцией, из которой вышеприведенное является просто частным случаем, является сопоставление с образцом ( больше при сопоставлении с образцом ) В некоторых функциональных языках (например, ни в одном из приведенных выше, но в Haskell) он отличается: он действительно вычисляет только первый элемент и не делает оценку остальной части списка.
Однако в процедурном коде, который вы показали, нет ничего, что можно было бы квалифицировать как сопоставление с образцом.