Продление жизни
От: Ablex  
Дата: 22.03.18 15:32
Оценка:
Привет всем!

На одном форуме натолкнулся на код с вопросом:
#include <iostream>
 
struct S {
    S()         { std::cout << __PRETTY_FUNCTION__ << '\n'; }
    S(const S&) { std::cout << __PRETTY_FUNCTION__ << '\n'; }
    ~S()        { std::cout << __PRETTY_FUNCTION__ << '\n'; }
};
 
int main(int argc, char*[])
{
    S s{};
    std::cout << __LINE__ << '\n';
    const S& rs = argc > 1 ? s : static_cast<const S&>(S{});
    std::cout << __LINE__ << '\n';
}

почему не продлевается время жизни? (При этом говорят, что в VS — продлевается) Это баг какой-то, у кого?

Т.к. ответа там не было — (а мне интересно же) решил спросить тут.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.