может кто-нибудь объяснить мне этот код C++?

Что означает двоеточие в следующем коде? а откуда взялась функция обратного вызова?

using void_callback_f = void (*)();
std::vector<void_callback_f> _reload_callbacks;

void Reload() {
    for (const auto& callback : _reload_callbacks) {
        callback();
    }
}

1 ответ

Решение

Двоеточие в цикле for является примером Range-based for loop

range_expression оценивается для определения последовательности или диапазона для итерации. Каждый элемент последовательности, в свою очередь, разыменовывается и присваивается переменной с типом и именем, указанными в range_declaration.

Пожалуйста, проверьте здесь для получения дополнительной информации

Другие вопросы по тегам