Затворы берут все переменные в своей лексической области действия для поездки, возможно продлевая их жизни.Указатели на функции этого не делают - если переменные, на которые есть ссылки в их коде, исчезают, они скрываются.
Приведенный вами пример кода немного сбивает с толку.Я считаю, что он должен быть внутри функции, а это означает, что lessThan
является локальной переменной.Если выход из этой области, но указатель функции все еще существует, тогда в его коде будет ссылка на несуществующую переменную - lessThan
.