zzh233 发表于 2022-5-5 22:21:55

请教文本型 []和文本数组类的区别

一直用文本数组类来做数组 不知道这2个区别在哪

李先森 发表于 2022-5-5 22:50:31

我觉得应该是这样,文本=“aa”可以直接赋值,而文本数组.加入成员(aa),需要类.方法才能操作,一个理解为基本数据类型,一个我理解为扩展类型,数组类可操作性比较强,

zzh233 发表于 2022-5-5 23:57:41

李先森 发表于 2022-5-5 22:50
我觉得应该是这样,文本=“aa”可以直接赋值,而文本数组.加入成员(aa),需要类.方法才能操作,一个理 ...

那能不能混合操作那 比如 文本=“aa”之后 我又想 文本.加入成员("bb") 就不行了是吧 那应该是两种操作模式

福寿 发表于 2022-5-6 02:50:01

一个是动态的,一个是静态的

创世魂 发表于 2022-5-6 07:37:19

利用数组类操作更加灵活方便。

在视窗里面没有提供数组符号相关数组操作的方法,比如:加入成员之类的,用数组符号的话,无法操作

urenai 发表于 2022-5-6 08:55:21

我也查过,比喻说,重定义数组,之类的都没有。
文本组[] 应该适用于初始数据,静态数据。

数组类,适用场景为通用。

Xelloss0618 发表于 2022-5-6 09:53:26

[] 是 C 语言给你的数组,只能用固定的成员数,理论上是最快的,就是用起来局限性比较大。
易语言里的数组也是类似 C 语言这种,易语言虽然有加入成员和重定义数组两个函数,但函数内部实际上就是新建一个数组,然后把之前的内容复制过去,因此需要不断重新分配内存,所以易语言的这两个函数都很慢。

火山的数组类是一个 C++ 类,跟 std::vector 类似,不过火山的数组类不是 vector,而是用字节集类实现的。
火山的数组类会预申请一段内存,只要加入成员后不超过这个大小,就不会重新分配内存。
如果需要加入大量的数组成员,可以提前设置较大的「预分配尺寸」,就可以适当减少重新分配内存的次数,加快效率,但可能会更占内存一些。

zzh233 发表于 2022-5-6 11:13:04

Xelloss0618 发表于 2022-5-6 09:53
[] 是 C 语言给你的数组,只能用固定的成员数,理论上是最快的,就是用起来局限性比较大。
易语言里的数组 ...

万分感谢耐心教导 我还是用 数组类 简单一点 至于[] 我就用于数组常量得了 比如保存一些固定坐标啥的

苏紫龙 发表于 2022-5-6 17:44:23

Xelloss0618 发表于 2022-5-6 09:53
[] 是 C 语言给你的数组,只能用固定的成员数,理论上是最快的,就是用起来局限性比较大。
易语言里的数组 ...

讲解的很清楚,学习了!

alexqj 发表于 2022-12-12 12:09:55

Xelloss0618 发表于 2022-5-6 09:53
[] 是 C 语言给你的数组,只能用固定的成员数,理论上是最快的,就是用起来局限性比较大。
易语言里的数组 ...

困扰好一阵子终于解惑了,多谢
页: [1]
查看完整版本: 请教文本型 []和文本数组类的区别