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

Определение длины таблицы со строчными индексами?

Вопрос

Здравствуйте, как определить длину таблицы, если в роли индексов выступают строки?

 

Надеюсь термины не перепутал.

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


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

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

Всегда срабатывает - подсчёт циклом.

local count = 0
for k, v in pairs(tab) do
 count = count + 1
end

Способа поумнее я не нашёл, и не уверен, что таковой вообще существует.

Есть вариант поддержания длины таблицы в отдельном поле, но это не всегда годится.

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


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

Всегда срабатывает - подсчёт циклом.

local count = 0
for k, v in pairs(tab) do
 count = count + 1
end

Способа поумнее я не нашёл, и не уверен, что таковой вообще существует.

Есть вариант поддержания длины таблицы в отдельном поле, но это не всегда годится.

Хмм, у меня получилось следующее:

function tableLen (a)
local b = 0
for I, _ in pairs(a) do
b=b+1
end
return b
end

При этом функция всегда возвращает 0. В чем проблема?

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


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

А, все, разобрался. Я в коде в функции написал

local a ={}
:fp:

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


Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.

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