Рассмотрим следующую функцию, которая возвращает таблицу с тем же содержимым, что и v.elements:
luabind::object Foo(Bar& v, lua_State* L)
{
luabind::object obj = luabind::newtable(L);
for (unsigned int i = 0; i < v.count; ++i)
{
obj[i + 1] = v.elements[i];
}
return obj;
}
Как мне отредактировать эту функцию, чтобы она возвращала таблицу, когда v.count больше 1, но возвращает одно число (не таблицу), равное v.elements [0], когда v.count равно 1?
Предположим, что v.elements имеет тип std::array<int, N>
, где N >= 1
. Предположим также, что v.count >= 1
и v.count <= N
.