возвращаемых значений, сколько я попрошу (если функция ничего не вернула, когда должна была, то положит NILы).
И вопрос такой: нужно ли мое стек от этих NILов чистить? Или я могу просто проверить, что если на стеке не то, что мне нужно (lua_isnumber, например), то просто забить?
> Внутри? Где внутри? Внутри стека. > Грубо говоря, lua_call положит на стек столько возвращаемых значений, сколько я попрош у (если функция ничего не вернула, когда должна была, то положит NILы). Вроде того. > И вопрос такой: нужно ли мое стек от этих NILов чистить? Нет, за редким исключением. > Что означает очищает функцию? Что делает lua_call? (подсказка: запускает функцию). Где лежит ссылка на функцию? (подсказка: в стеке). Откуда lua_call вычищает функцию? (подсказка: из стека). Во время сишного программирования, тебе крайне желательна какая-нибудь функция, которая умеет печатать содержимое стека.
>Нет, за редким исключением. Сейчас провел эксперимент - NILы остаются
Обсуждают сегодня