递归火山软件开发平台

标题: 请教PC 文本 和 对象的转换问题? [打印本页]

作者: aizaizheli    时间: 2023-12-12 21:52
标题: 请教PC 文本 和 对象的转换问题?
本帖最后由 aizaizheli 于 2023-12-12 22:44 编辑

我在把一段文本用             对象类变量 = 文本到对象(”文本“) 再用  
    文本型变量 = 对象到文本(对象类变量)

    调试输出(文本型变量)
结果是空文本,什么原因?用安卓输出的不是空文本


作者: xrea    时间: 2023-12-12 22:25
全部的操作是不是都在第一个文本变量的作用域中,如果不是的话应该是变量内存被释放了
作者: aizaizheli    时间: 2023-12-12 22:43
xrea 发表于 2023-12-12 22:25
全部的操作是不是都在第一个文本变量的作用域中,如果不是的话应该是变量内存被释放了 ...

是在同一作用域中,象写的一样 转换后再转换到文本变量里,调试结果就是空文本
作者: sfmf520    时间: 2023-12-12 23:31
<火山程序 类型 = "通常" 版本 = 1 />

变量 对象数组 <类型 = 对象数组类>
对象数组.加入成员 (文本到对象 ("文本"))
调试输出 ("对象数组", 对象数组.取成员数 (), 对象到文本 (对象数组.取成员 (0)))



这样可以正常读取。我也不知道为什么。


作者: aizaizheli    时间: 2023-12-12 23:44
sfmf520 发表于 2023-12-12 23:31
变量 对象数组
对象数组.加入成员 (文本到对象 ("文本"))
调试输出 ("对象数组", 对象数组.取成员数 (), ...

我说的是 把 文本转换到对象 保存到对象类变量里,再把对象类变量转换到文本保存到文本变量里,文本变量是空文本
作者: Xelloss0618    时间: 2023-12-12 23:45
“文本到对象”这个方法只能用于传参,比如某个方法要求的类型是对象类,你要把文本传进去,就可以用这个命令。
然后,就是任何对象类型,只要赋值给“对象类变量”,数据都会丢失掉。
原因很简单,子类赋值给父类,子类独有的数据都会丢失掉。
安卓没问题,是因为安卓支持参考赋值,火山只能复制赋值。
作者: aizaizheli    时间: 2023-12-13 00:14
Xelloss0618 发表于 2023-12-12 23:45
“文本到对象”这个方法只能用于传参,比如某个方法要求的类型是对象类,你要把文本传进去,就可以用这个命 ...

那把文本传进去 要怎么用 或者说有什么用呢?
作者: Xelloss0618    时间: 2023-12-13 00:19
aizaizheli 发表于 2023-12-13 00:14
那把文本传进去 要怎么用 或者说有什么用呢?

比如你上面的对象数组类,还有对象包装类,传进去会复制对象数据,以指针的方式保存。
这自然可以重新取出来。
作者: sfmf520    时间: 2023-12-13 01:01
Xelloss0618 发表于 2023-12-12 23:45
“文本到对象”这个方法只能用于传参,比如某个方法要求的类型是对象类,你要把文本传进去,就可以用这个命 ...

感谢!虽然不明白具体的意思。但是,明白了它的用法。
作者: aizaizheli    时间: 2023-12-13 20:09
Xelloss0618 发表于 2023-12-13 00:19
比如你上面的对象数组类,还有对象包装类,传进去会复制对象数据,以指针的方式保存。
这自然可以重新取 ...

原来这样啊,我还在想有这两个命令怎么得不到想要的结果呢。多谢多谢




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4