LINUX.ORG.RU

История изменений

Исправление RazrFalcon, (текущая версия) :

std::optional<int> f1() { return 1; }
std::optional<double> f2() { return 2; }

int main()
{
    auto v0 = f1();
    std::cout << v0.value() << std::endl; // 1
    v0 = f2();
    std::cout << v0.value() << std::endl; // 2
}

PS: вы точно на плюсах пишите код, или просто на лоре вбрасываете?

Исходная версия RazrFalcon, :

std::optional<int> f1() { return 1; }
std::optional<double> f2() { return 1; }

int main()
{
    auto v0 = f1();
    std::cout << v0.value() << std::endl; // 1
    v0 = f2();
    std::cout << v0.value() << std::endl; // 1
}