level 6
twototoo222
楼主
刚打开Mathematica第一个语句就运行
Attributes[Plot]或者Attributes[ParametricPlot]
就会看到Plot的选项只有{Protected,ReadProtected}两项
再运行一次,它就有{HoldAll,Protected,ReadProtected}三项了
这是为什么呢?第一次运行和第二次运行结果居然不同,第一次居然没有HoldAll属性。
还有一个疑问,既然Plot有HoldAll属性,那为什么Plot里的函数有时候要加Evaluate,而大多数时候又不需要呢?是Plot的内部代码特殊处理这个问题的吗?我刚才看了看Plot的内部代码,完全看不懂啊。
2013年05月10日 14点05分
1
Attributes[Plot]或者Attributes[ParametricPlot]
就会看到Plot的选项只有{Protected,ReadProtected}两项
再运行一次,它就有{HoldAll,Protected,ReadProtected}三项了
这是为什么呢?第一次运行和第二次运行结果居然不同,第一次居然没有HoldAll属性。
还有一个疑问,既然Plot有HoldAll属性,那为什么Plot里的函数有时候要加Evaluate,而大多数时候又不需要呢?是Plot的内部代码特殊处理这个问题的吗?我刚才看了看Plot的内部代码,完全看不懂啊。
