Re: constexpr - разочарование
От: tstalker Украина  
Дата: 16.06.17 13:37
Оценка: -1
Здравствуйте, Дрободан Фрилич, Вы писали:

ДФ>Игрался с констэкспрами.

ДФ>И VC , и G++ генерят обычные вызовы даже в релизе.
ДФ>Вычисления в compile time производятся только если компилятор припереть к стенке,
ДФ>Это нормально?

Произошла типичная подмена понятий.
Добро победит в отдалённой перспективе.
А пока бери, сынок, шашку и рубай всю эту сволочь направо и налево!

(Ц) Гоблин. Властелин колец

Вот пример вычисления факториала:
#include <iostream>

using ull = unsigned long long;
using cull = const ull;

constexpr ull fact(cull x)
{
    return x ? x * fact(x - 1) : 1;
}

int main()
{
    std::cout << fact(5) << std::endl;
}

С опцией -Ofast вместо вызова функции подставляется число 120.
Без данной опции генерится вызов функции.

Ваш К.О.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.