Я пытаюсь привести простой пример для операции, которая приводит к rvalue.
Этот тестовый пример должен был работать, но на удивление (для меня) результат добавления двух int
не является rvalue (ссылкой). Что мне здесь не хватает?
void test(int i, int j)
{
// this assert should pass, but fails:
static_assert(std::is_same<decltype(i + j), int&&>(), "i + j should be a rvalue");
// this assert passed, but should fail:
static_assert(std::is_same<decltype(i + j), int>(), "this assert should fail...");
}