Доступ к значению в методе с использованием * - PullRequest
3 голосов
/ 10 марта 2012

В определении метода, когда * используется следующим образом, что это значит?

def foo(*)
   ...
end

Я понимаю следующее использование:

def foo(*args)
   ...
end

Яне уверен, как я получу доступ к параметрам метода в первом случае.

Ответы [ 2 ]

4 голосов
/ 10 марта 2012

Это означает «принимать и отбрасывать любое количество параметров».

Оба определения технически одинаковы, но отсутствие имени для массива аргументов означает, что вы не можете получить к нему доступ.

0 голосов
/ 10 марта 2012

В первом случае он просто позволяет вызывать с произвольными аргументами и отбрасывает их.

Во втором случае любые аргументы присваиваются аргументам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...