аргументы шаблона во время компиляции развернутого цикла for?

википедия ( здесь ) дает время компиляции для развертывания цикла for ....... мне было интересно, можем ли мы использовать аналогичный цикл for с операторами шаблона внутри ... например ...

следующий цикл действителен

template
void Device::createSubDomains()
{
    for(int i=0; i< max_subdomain; ++i)
    {
        SubDomain tmp(member);
        ...
        // some operations on tmp
        ...
    }
}

Субдомен - это класс, который принимает параметр шаблона int и здесь был построен с аргументом, который является членом класса Device.

Спасибо за ответ ребята ... теперь, когда ты знаешь, чего я хочу ... В любом случае я достиг того, чего хочу ??

Наконец-то я получил то, что хотел .............. вместо прямого использования цикла for ... вместо этого можно использовать конструкцию Boost :: MPL for_each . Я еще не реализовал это, но предполагаю, что это дает способ делать то, что я хотел ...

Я взял ответ из другого вопроса о переполнении стека здесь ... Однако комментарий к тому же вопросу осуждает его использование, потому что он будет очень медленным (для больших циклов, конечно) ... однако .. для небольших циклов я не думаю, что должно быть вздутие живота ... я попробую код и дам вам знать результаты ....

использование хорошо проиллюстрировано в примере

6
задан Community 23 May 2017 в 12:31
поделиться