известная функция на С++, что ссылка на константу продлевает срок службы временного объекта, возвращаемого функцией, но приемлемо ли это для использовать постоянную ссылку на члена временного объекта, возвращаемого функцией?
Пример:
#include <string>
std::pair<std::string, int> getPair(int n)
{
return {std::to_string(n), n};
}
int main(int, char*[])
{
const int x = 123456;
const auto& str = getPair(x).first;
printf("%d = %s\n", x, str.c_str());
return 0;
}
Вывод:
123456 = 123456