Efecto secundario (programación)
La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la
versión revisada el 7 de junio de 2020; las comprobaciones requieren
6 ediciones .
Los efectos secundarios son cualquier acción de un programa en ejecución que cambia el entorno de ejecución [ 1 ] . Por ejemplo, los efectos secundarios incluyen [2] :
- acceso (lectura o escritura) a un objeto definido con el modificador volatile (inglés) ;
- cambio (registro) de un objeto;
- cambio de archivo;
- cambiar el comportamiento de las instrucciones del procesador que procesan números de punto flotante (ver entorno de punto flotante (inglés) );
- llamando a una función que realiza cualquiera de las acciones anteriores.
Un efecto secundario de la función es la capacidad, en el proceso de realizar sus cálculos : leer y modificar los valores de las variables globales , realizar operaciones de E/S , responder a situaciones excepcionales, llamar a sus controladores . Si llama a una función de efecto secundario dos veces con el mismo conjunto de valores de argumento de entrada, puede suceder que se devuelvan valores diferentes como resultado. Estas funciones se denominan funciones no deterministas con efectos secundarios.
Véase también
Notas
- ↑ Estándar internacional. ISO/CEI 9899:201x. Tecnologías de la información - Lenguajes de programación - C. Borrador del comité N1570 (ing.) (pdf) Cláusula 5.1.2.3, párrafo 2 . ISO/CEI (12 de abril de 2011) . — Borrador de la norma C11. Consultado el 22 de noviembre de 2014. Archivado desde el original el 25 de diciembre de 2021.
- ↑ cppreference.com. " Orden de cálculos Archivado el 15 de febrero de 2015 en Wayback Machine " .
Literatura
- Sebesta R.U. Conceptos básicos de lenguajes de programación \u003d Conceptos de lenguajes de programación. - 5ª ed. - M .: Williams , 2001. - S. 282-284. — ISBN 5-8459-0192-8 .
- Dowd, M.; McDonald, J.; Schuh, J. Efectos secundarios de la función // El arte de la evaluación de la seguridad del software: identificación y prevención de vulnerabilidades de software. - Educación Pearson, 2006. - 1200 p. — ISBN 9780132701938 .