对改变全局状态的方法有标准的技术术语吗?
- “ unpure ”过于严格,因为 unpure 方法
println("I don't consider stdout to be part of the global state")
并date()
不会修改全局状态。 - “ Mutator method ”很接近,但通常是“setter”的同义词,因此可能只改变一个变量,或者只改变一个局部变量而不改变全局状态。
- “ const 方法” 似乎只用于 C++ 并且暗示了一些过于严格的技术细节(例如,该方法可能不会调用任何非 const 方法)。
- “变异方法”对我来说听起来不错,但似乎只是在目标 c 中使用的一个术语。
更新:全局状态是指对其他方法或同一方法的其他调用可见的内存。
由于程序的任何方法都无法读取 stdout,println("I don't consider stdout to be part of the global state")
因此具有打印的副作用,但不会更改全局状态。