WikiSort.ru - Программирование

ПОИСК ПО САЙТУ | о проекте

Побо́чные эффе́кты (англ. side effects) — любые действия работающей программы, изменяющие среду выполнения (англ. execution environment)[1]. Например, к побочным эффектам относятся[2]:

  • доступ (чтение или запись) к объекту, определённому с модификатором volatile (англ.);
  • изменение (запись) объекта;
  • изменение файла;
  • изменение поведения инструкций процессора, обрабатывающих числа с плавающей точкой (см. floating-point environment (англ.));
  • вызов функции, выполняющей любое из перечисленных выше действий.

Побочный эффект функции — возможность в процессе выполнения своих вычислений: читать и модифицировать значения глобальных переменных, осуществлять операции ввода-вывода, реагировать на исключительные ситуации, вызывать их обработчики. Если вызвать функцию с побочным эффектом дважды с одним и тем же набором значений входных аргументов, может случиться так, что в качестве результата будут возвращены разные значения. Такие функции называются недетерминированными функциями с побочными эффектами.

См. также

Примечания

  1. International standard. ISO/IEC 9899:201x. Information technology — Programming languages — C. Committee draft N1570 (англ.) (pdf) Пункт 5.1.2.3, параграф 2. ISO/IEC (April 12, 2011). — Черновик стандарта C11. Проверено 22 ноября 2014.
  2. cppreference.com. «Порядок вычислений» (англ.).

Литература

  • Себеста Р.У. Основные концепции языков программирования = Concepts of programming languages. — 5-е изд. М.: Вильямс, 2001. — С. 282—284. ISBN 5-8459-0192-8.
  • Dowd, M.; McDonald, J.; Schuh, J. Function Side-Effects // The Art of Software Security Assessment: Identifying and Preventing Software Vulnerabilities. — Pearson Education, 2006. — 1200 p. ISBN 9780132701938.

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии