Entities of function type
От: Максим Рогожин Россия  
Дата: 24.12.18 18:31
Оценка:
Привет!

Objects, references, functions including function template specializations, and expressions have a property called type, which both restricts the operations that are permitted for those entities


Entities of int type это числа (из некоторого диапазона), в тексте программы их нет, они имеют бинарное представление.
А что имеется ввиду под entities of function type — имеется ввиду бинарное представление или текст функции в программе?

С одной стороны бинарного представления функции могут не иметь. С другой стороны может быть указатель на функцию.
Отредактировано 24.12.2018 18:33 Максим Рогожин . Предыдущая версия .
Re: Entities of function type
От: reversecode google
Дата: 24.12.18 18:43
Оценка:
прочитайте предложение полностью до точки
Re: Entities of function type
От: Vamp Россия  
Дата: 24.12.18 19:00
Оценка:
МР>А что имеется ввиду под entities of function type — имеется ввиду бинарное представление или текст функции в программе?

МР>С одной стороны бинарного представления функции могут не иметь. С другой стороны может быть указатель на функцию.


Так как тип "функция" распадается в тип "указатель на функцию" при любой попытке сделать с объектом этого типа что-то осмысленное, вопрос в значительной степени лишен смысла.
Да здравствует мыло душистое и веревка пушистая.
Re[2]: Entities of function type
От: σ  
Дата: 24.12.18 20:01
Оценка:
МР>>А что имеется ввиду под entities of function type — имеется ввиду бинарное представление или текст функции в программе?

МР>>С одной стороны бинарного представления функции могут не иметь. С другой стороны может быть указатель на функцию.


V>Так как тип "функция" распадается в тип "указатель на функцию" при любой попытке сделать с объектом этого типа что-то осмысленное, вопрос в значительной степени лишен смысла.


Так как тип "функция" не распадается в тип "указатель на функцию" при самом осмысленном что с выражением этого типа можно сделать — вызове функции — (https://timsong-cpp.github.io/cppwp/n4659/expr.call#1 … For a call to a non-member function or to a static member function, the postfix expression shall be either an lvalue that refers to a function (in which case the function-to-pointer standard conversion is suppressed on the postfix expression) …), да и объектов этого (функций) типа не существует, ответ в значительной степени лишён смысла.
Re[3]: Entities of function type
От: Максим Рогожин Россия  
Дата: 26.12.18 16:33
Оценка:
Здравствуйте, σ, Вы писали:

σ>Так как тип "функция" не распадается в тип "указатель на функцию" при самом осмысленном что с выражением этого типа можно сделать — вызове функции — (https://timsong-cpp.github.io/cppwp/n4659/expr.call#1 … For a call to a non-member function or to a static member function, the postfix expression shall be either an lvalue that refers to a function (in which case the function-to-pointer standard conversion is suppressed on the postfix expression) …), да и объектов этого (функций) типа не существует, ответ в значительной степени лишён смысла.


Objects, references, functions including function template specializations, and expressions have a property called type, which both restricts the operations that are permitted for those entities and provides semantic meaning to the otherwise generic sequences of bits.


Правильно я понимаю, что код функции (из программы) будет переводится в машинные команды и эти команды будут помещаются в readonly область памяти программы? Вот этим машинным командам, т.е. этой sequence of bits и приписывается конкретный тип function, например, int ()(int, int). А указатель на функцию, int (*)(int, int), указывает на начало этих машинных команд, т.е. на начало этой sequence of bits?
Отредактировано 26.12.2018 16:34 Максим Рогожин . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.