Перегрузка процедур и функций: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Строка 78:
 
== Ресурсоёмкость ==
Возможность перегрузки имён процедур и функций в программе определяется возможностями синтаксического анализа компилятора и требованиями стандарта языка их написания. Синтаксический анализ заключается в сопосталениисопоставлении вызова перегруженной фукциифункции с конкретной функцией (с конкретной сигнатурой) и соответственно не влияет на ресурсоёмкость программы и времени её выполнения.
 
Размер откомпилированного кода программы при использовании перегрузки функции вместо функции с произвольным колличествомколичеством аргументов увеличивает размер откомпилированной программы (вместо одной процедуры с переменным колличествомколичеством аргументов компилируется несколько, для конкретного количества), но в замен увеличивается производительность программы, при вызове процедуры, которая описаннаописана как перегруженная (не происходит анализ типов и других вычислительных операций во время выполнения программы). Так, например, в библиотеке STL языка С++, функции с переменным колличетсвомколичеством аргументов переопределена перегрузкой для часто используемых вариантов.
 
== См. также ==