R言語徹底解説第6章関数
6.6返り値
- 関数はオブジェクトを一つだけ返すことができる,複数のオブジェクトを返すときはリストにまとめて返す
- 純粋関数とは,同じ入力に対しては常に同じ出力を返し,ワークスペースに返り値を除いて影響を及ばさない(副作用がない) →入力値と出力値のみに気を配ればよい
- Rオブジェクトにはコピー修正セマンティックが適用されることにより副作用が生じるのを防いでいる,セマンティクについて以下参照https://yohhoy.hatenablog.jp/entry/2012/12/15/120839
- 関数はinvisible()を用いて返り値を隠蔽することもできる
6.6.1処理を抜ける際の処理
- 関数は処理結果を返す以外に,on.exit()を使うことで実行終了のタイミングで他の処理を行うように設定することが可能,関数実行後グローバル環境を戻す処理に使われる