Non capisco l'articolo di wikipedia su Effetti collaterali :
In computer science, a function or expression is said to have a side effect if, in addition to returning a value, it also 1.) Modifies some state or 2.) Has an observable interaction with calling functions or the outside world.
Conosco un esempio della prima cosa che fa sì che una funzione o un'espressione abbiano effetti collaterali - modifica di uno stato
Funzione ed espressione modifica di uno stato :
1).
foo(int X)
{
return x = x % x;
}
a = a + 1;
Che cosa fa 2.) - Ha un'interazione osservabile con le funzioni di chiamata o il mondo esterno, "significa? - Per favore, fai un esempio.
L'articolo continua a dire, "Ad esempio, una funzione potrebbe modificare una variabile globale o statica, modifica uno dei suoi argomenti, genera un'eccezione, scrivi dati su un display o file, leggi dati o chiama altre funzioni di effetti collaterali ... "Sono tutti questi esempi, esempi di 1.) - Modifica di alcuni stati o sono anche parte di 2.) - Ha un'interazione osservabile con le funzioni di chiamata o il mondo esterno?