dolly 发表于 2011-1-12 14:22:15

mathematica为什么默认全是全局变量呀?

mathematica编程时,如果你不在module中声明的话,那么默认全部是全局变量,
而matlab中,如果编写子函数,如果你不声明的话,默认全部是局部变量,
我不喜欢在写子函数的时候,还把子函数里面的局部变量一个一个地列
出来,觉得这样实在是太麻烦,实在不能理解mathematica的编程的思路,
不知道各位有什么高见?

guocong89 发表于 2011-1-12 14:59:23

我不喜欢在写子函数的时候,还把子函数里面的局部变量一个一个地列
出来,觉得这样实在是太麻烦
确实有这个问题,习惯就好了。mathemtica这种做法方便了模块间的数据通信,虽然从编程语言设计来说我并不欣赏。

HyperGroups 发表于 2011-1-12 15:15:19

又不小心回了两次

本帖最后由 HyperGroups 于 2011-1-12 15:17 编辑

不知道是不是浏览器跟网站的兼容问题,总是不小心回复两条同样的,因为回复成功后还是停留在之前的状态,点刷新后发现重复了。。。

HyperGroups 发表于 2011-1-12 15:15:35

这个没什么问题啊,我只说Notebook一个核心,因为Notebook又不是全拿来做编程(复杂的)用的,许多时候要做的是计算,能方便得引用之前的结果有什么不好。另外matlab的command window 里的不也是全局变量。mEditor里如果比如mathematica的m文件的话我想也许是可以设置的吧,并且Mma提供了多种方式对变量进行限制。

guocong89 发表于 2011-1-12 15:35:00

4# HyperGroups
你对这个问题有何高见,弄得我郁闷死了
http://forum.simwe.com/thread-967538-1-1.html
页: [1]
查看完整版本: mathematica为什么默认全是全局变量呀?