Тогда вся ваша последняя часть не имеет смысла. 1L тоже "int", как и "integer". Либо вы точно имеете в виду то, что говорите, либо нет.

void test(int && val)
{
    val=4;
}

void main()
{  
    test(1);
    std::cin.ignore();    
}

создается когдаint вызывается или по умолчанию в с ++ литералыtest тип?intДолжно ли это быть

Ответы на вопрос(2)

Ваш ответ на вопрос