Каково точное определение замыкания?

Я читал предыдущие темы о замыканиях стекового потока и других источниках, и одна вещь все еще смущает меня. Из того, что я смог соединить технически, замыкание представляет собой просто набор данных, содержащий код функции и значениеbound variables в этой функции.

Другими словами, технически следующая функция C должна быть закрыта от моего понимания:

int count()
{
    static int x = 0;

    return x++;
}

Однако все, что я читаю, похоже, подразумевает, что замыкания должны как-то включать передачу функций в качестве объектов первого класса. Кроме того, обычно подразумевается, что замыкания не являются частью процедурного программирования. Это тот случай, когда решение чрезмерно связано с проблемой, которую оно решает, или я неправильно понимаю точное определение?

Ответы на вопрос(8)

Ваш ответ на вопрос