В программировании и некоторых офисных приложениях есть так называемые встроенные функции. С их помощью можно выполнять различные команды и операции в несколько раз быстрее. В случае с программированием происходит ускорение имеющегося исходного кода за счет занимаемого пространства. Соответствующие компоненты напоминают своеобразный заполнитель.
В данной статье будет рассказано о том, что собой представляют встроенные функции. За основу будет взят язык разработки C++, а также офисное популярное приложение Excel.
Программирование
Встроенная функция в языках разработки СИ-семейства (C и C++) – это функция, которую можно внедрить в программный код. Чтобы ее задать, нужно использовать ключевое слово inline. Соответствующий элемент приложения:
- Является директивой компилятора. Она предлагает (но не требует в обязательном порядке), чтобы компилятор заменял тело функции встроенной, задействовав встроенные расширения. Код функции будет вставляться по адресу каждого его вызова. Это приведет к экономии ресурсов на непосредственный вызов операции. Компонент напоминает спецификатор хранилища – register. Он тоже помогает оптимизировать исходный код.
- Изменяет поведение компоновки. Подобная операция необходима из-за модели раздельной компиляции.
При помощи встроенных различных функций программист добьется быстродействия даже самого объемного приложения. Использоваться ключевое слово inline достаточно легко. Для этого необходимо поставить соответствующую «фразу» перед именем функции. После происходит использование встроенной «команды» в качестве самой обычной функции.
Выше – пример того, как можно встроить функцию в программный код C++.
Ограничения
GCC не сможет внедрять функции, если:
- они выступают в качестве вариативных;
- используется alloca;
- в процессе задействованы вычисленные или нелокальные goto;
- в коде используются вложенные функции;
- используются: setjmp, __builtin_longjmp, __builtin_return, __builting_apply_args.
В спецификациях Microsoft в MSDN и Visual C++ нельзя внедрить функцию (даже при помощи __forceinline), когда:
- происходит компиляция объекта, вызывающего функцию (или самой команды), через /Ob0;
- объект и функция используют разные типы обработка исключений;
- в «команде» есть список переменных аргументов;
- используется встроенная сборка – если она не скомпилирована через /Og, /Ox, /O2 или /O1;
- задействованная «команда» выступает рекурсивной и не сопровождается #pragma inline_recursion(on);
- происходит виртуальный вызов «команды»;
- приложение воспринимает адрес функции, после чего происходит вызов через указатели.
Также стоит обратить внимание на то, что встроить рассматриваемый компонент не получится при его предварительной пометке через модификатор naked __declspec.
Использование встраиваемых функций в C++ — это не слишком трудно. Не рекомендуется пользоваться соответствующим приемом с особо объемными кодами. Это может привести к значительному увеличению «тяжести» приложения. А еще компилятор может по собственному усмотрению игнорировать попытки программиста сделать функцию «внедренной».
В Excel
MS Excel – популярное «офисное» приложение. С его помощью люди работают с различными базами данных, а также с электронными таблицами. Здесь тоже есть рассматриваемый компонент. Только он работает иначе.
Здесь встраиваемые функции – это заранее прописанные процедуры преобразования имеющихся электронных материалов. Все соответствующие «команды» делят на несколько категорий:
- математические;
- статистические;
- логические;
- финансовые;
- текстовые;
- иные типы.
Каждая категория отвечает за отображение своих собственных операций и работу с данными.
Особенности
Каждая «команда» встроенного характера имеет:
- Имя. Обычно – сокращенное название производимого действия. Вызываются соответствующие компоненты с теми или иными аргументами. Чаще всего возвращают единственное значение. Подразумевается результат проведенных манипуляций.
- Аргументы. Элемент и его содержимое меняется в зависимости от типа «команды». В виде аргумента может выступить тест, выражение, ссылки на ячейки, а также диапазоны, числа, результаты обработки иных «команд».
Рассматриваемые элементы условно делятся на:
- содержащие один аргумент;
- с несколькими фиксированными «параметрами»;
- операции с нефиксированным количеством аргументов;
- с необязательными «параметрами».
Есть и операции, которые вовсе не предусматривают те или иные аргументы. Пример – ТДАТА. При использовании встраиваемых в Excel функций нужно сначала указать ее имя, после в скобочках – перечислить аргументы посредством точки с запятой.
Выше – примеры соответствующих записей.
Способы внедрения
В Excel можно вставить функцию в имеющуюся формулу несколькими путями:
- Использовать кнопки категорий «команд» в группе «Библиотека…». Она находится на навигационной ленте в блоке «Формулы».
- Задействовать специальный инструмент офисного приложения. Он носит название «Вставить команду». Тоже расположен в «Библиотеке». Альтернативное решение – использование формул.
- Указать (ввести) необходимое выражение непосредственно в ту или иную ячейку. Допускается ее написание в строке формул.
Далее стоит изучить более подробно каждый тип имеющихся «выражений». Тогда пользователь сможет понять, в каких ситуациях ими пользоваться.
Математика и статистика
Выражения, которые встроены в Excel специально для того, чтобы решать математические задачки. Сюда же относят решение вопрос, связанных со статистикой. Соответствующие операции помогают автоматизировать статистическую обработку имеющейся информации.
Выше – наиболее распространенные варианты «команд». Чтобы лучше понять принцип их действия, рекомендуется опробовать каждую операцию на практике.
Логика
Есть логические встроенные функции. Они выдают результат «истина» или «ложь». Сюда относят:
- если;
- и;
- или;
- истина;
- ложь;
- не.
Принцип действия точно такой же, как и в программировании.
Финансы
Встроить можно еще и команды, связанные с разного рода финансовыми операциями. Они помогают вычислять размеры выплат при погашении кредитных долгов, а также определять банковские процентные ставки и многое другое.
Предназначаются преимущественно для «операций с деньгами». При грамотном использовании значительно облегчают жизнь каждому человеку.
Текст
Таблицы Excel используются преимущественно для работы с числами, но и обработка текстовой информации там тоже предусмотрена. Microsoft предлагает использовать встроенные функции соответствующего характера для автоматизации процессов.
Пример – чтобы занести названия товаров или услуг, фамилии, имена и отчества сотрудников, адреса и телефоны компаний. В Excel есть встроенные операции, которые позволяют определять:
- длину написанного текста;
- номер имеющейся позиции первого вхождения символа в текст;
- части текста, которая отвечает определенным условиям.
В виде аргументов тут выступают текстовые данные, ссылки на ячейки с различным текстом или числами.
Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в Otus! Ниже – один из них: