Как я могу написать встроенную рекурсивную лямбду в C ++?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как я могу написать встроенную рекурсивную лямбду в C ++?

Сообщение Anonymous »

Как я знаю в C ++ 17, я могу написать рекурсивную лямбду, как это: < /p>
auto dfs = [&](const auto &self, int x) -> void {
// ....
self(self, x);
};

dfs(dfs, 0);
< /code>
К сожалению, я должен выдержать еще один параметр, который немного уродлив. И я сомневаюсь, что компилятор может сделать его встроенным. Есть ли новые варианты в новых стандартах C ++? (C ++ 20 или C ++ 23)

Подробнее здесь: https://stackoverflow.com/questions/781 ... ambda-in-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»