Привет всем!
На одном форуме натолкнулся на код с вопросом:
#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 — продлевается) Это баг какой-то, у кого?
Т.к. ответа там не было — (а мне интересно же) решил спросить тут.