易语言普通模块和类模块的区别
━━━━━━━━━━━━━━━━━━━━━━━━━
函数是模块,控件就是类模块。
━━━━━━━━━━━━━━━━━━━━━━━━━
无论类还是普通模块都是为了代码重用的目的而来的.
区别在于模块只能做到函数(即:计算)的重用,模块不包含私有数据,它只能每次从外部得到数据去处理,然后再交给外部.
而类则更高一层,它其实是计算和数据的一个整体,即它可以拥有私有的数据,并且在该类的所有函数都可以直接处理这些私有数据.其实类更接近于自定义数据类型,而不是模块.
调用模块的时候,你可以直接使用里面的任何一个函数,而类的话,你首先要实例化,然后用"方法"去调用它的函数.
━━━━━━━━━━━━━━━━━━━━━━━━━
类模块和标准模块的比较
类模块和标准模块的不同点在于存储数据方法的不同。标准模块的数据只有一个备份。这意味着标准模块中一个公共变量的值改变以后,在后面的程序中再读取该变量时,它将得到同一个值。
而类模块的数据,是相对于类实例(也就是,由类创建的每一对象)而独立存在的。
同样的,标准模块中的数据在程序作用域内存在,也就是说,它存在于程序的存活期中;而类实例中的数据只存在于对象的存活期,它随对象的创建而创建,随对象的撤消而消失。
━━━━━━━━━━━━━━━━━━━━━━━━━
如果是程序集的话程序集变量在多线程中是公用的,类似与全局变量,多线程读写程序集变量需要加许可证 其他区别在使用过程中就能感觉 ...
自定义数据的话 就是相当与一个超级变量
普通变量只有一个基本类型 比如文本型或者整数型
但是自定义数据类型 他可以拥有自己的成员 每个成员都能是一个不同的基本类型
所以 自定义数据类型 天然是为应用数组做准备的,即任意一个数组的类型如果为你定义的自定义数据类型,那么该数组的任意一个成员都将能通过赋值得到多个不同类型的变量
━━━━━━━━━━━━━━━━━━━━━━━━━