Можно ли сказать что литерал 1 является экземпляром типа int?

Можно ли сказать что литерал 1 является экземпляром типа int? Я знаю, что число 1 в коде является литералом, но можно ли сказать что это - экземпляр типа int, например когда у нас есть функция foo() и она возвращает 1.


Ответы (1 шт):

Автор решения: Stanislav Volodarskiy

Если ваш код похож на этот, то литерал исчезает как только попадает в оператор return функции возвращающей int:

int foo() {
    // здесь '1' - это литерал
    return 1;
}

int main() {
    // функция foo имеет тип int
    // в этом коде литералов нет, а есть значение типа int
    std::cout << foo() << '\n';
}
→ Ссылка