Перейти к содержимому
  • 0
artem211

Переменное число аргументов, arg ={...}

Вопрос

Граждане. 

Столкнулся в гугле с указанием параметров функций "...", указано, что при function a(...) bla bla end

в теле функции будет доступен тейбл arg, где полями будут как раз поданные в функцию аргументы. 

По всем примерам мною найденным так и должно быть. При попытке написать так - сталкиваемся с ошибкой что arg = nil всегда. Даже скопировал пример и попробовал запустить - результат тот же... Скажите что не так?

function sum(...)
r = 0
for i, v in ipairs(arg) do
  r = r + v
end
return r
end
print(sum(1,2,4,8,16,32))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендуемые сообщения

arg ={...}, в этом проблема, нужно инициализировать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Напиши вместо ipairs(arg) просто ipairs({...}), или перед этим впиши arg = {...}

upd: Опоздал, блин.

Изменено пользователем unknown

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить на вопрос...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...