递归火山软件开发平台

标题: 文本型参数如果是空白文本值就无法回传到调用方? [打印本页]

作者: shuimiao    时间: 2021-4-6 17:03
标题: 文本型参数如果是空白文本值就无法回传到调用方?
本帖最后由 shuimiao 于 2021-4-6 20:36 编辑

这算不算bug呢?如图所示,在调试输出中文本型变量作为方法参数回传数据有问题,变量有内容时就能正常回传并调试输出,没有内容就获取不到回传数据,而第二行重新调试输出该变量却又有数据

(, 下载次数: 298)

。。。。

作者: 创世魂    时间: 2021-4-6 17:10
空文本。肯定也会传递过去的啊。。。只不过。火山调试输出不会输出空文本。。算是细节上的一点不足。。
作者: shuimiao    时间: 2021-4-6 20:16
创世魂 发表于 2021-4-6 17:10
空文本。肯定也会传递过去的啊。。。只不过。火山调试输出不会输出空文本。。算是细节上的一点不足。。 ...

不是说的调试输出不会输出空文本,而是文本变量如果是空文本,作为参数放入方法里面调用回传,是无法得到回传内容到这个文本变量里的。而是文本变量必须有内容,才能得到方法回传。你可以试试
作者: shuimiao    时间: 2021-4-6 20:24
创世魂 发表于 2021-4-6 17:10
空文本。肯定也会传递过去的啊。。。只不过。火山调试输出不会输出空文本。。算是细节上的一点不足。。 ...

看这个例子,第一次是得不到回传的

(, 下载次数: 289)

作者: shuimiao    时间: 2021-4-6 20:37
创世魂 发表于 2021-4-6 17:10
空文本。肯定也会传递过去的啊。。。只不过。火山调试输出不会输出空文本。。算是细节上的一点不足。。 ...

这个例子更准确些。如图所示,在调试输出中文本型变量作为方法参数回传数据有问题,变量有内容时就能正常回传并调试输出,没有内容就获取不到回传数据,而第二行重新调试输出该变量却又有数据

(, 下载次数: 294)

作者: sinuo    时间: 2021-4-6 20:52
我也有这个疑问,像组数 对象 这些是引用类型,肯定都会变 ,基本数据类型除文本型 别的都不会变,就这个文本,不知道 是基本类型,还是引用类型.或许是bug
作者: 飞扬工作室    时间: 2021-4-6 21:20
你这样写:

调试输出 ("b", b, 方法回传 (b))

C++参数处理顺序是从后向前的.
作者: shuimiao    时间: 2021-4-6 23:59
飞扬工作室 发表于 2021-4-6 21:20
你这样写:

调试输出 ("b", b, 方法回传 (b))

吴总,如果是从后往前运算,也就是逆向运算,那我的写法里面,调试输出的最后一个变量a就是最先输出的,就应该是原来的内容,也就是这时候还没有从方法回传内容给a。可是实际上,当a在调用方法回传之前本身有任意内容,先输出的a就已经有了方法的回传内容,分明是正向运算啊;而当a在调用方法回传之前本身空白内容,先输出的a就一样是空白内容(看起来没有获得回传内容,或者没有执行回传方法),这样就符合逆向运算。

吴总,建议你照着我的截图里面的代码测试一下,我估计是调试输出()的bug
作者: 飞扬工作室    时间: 2021-4-7 17:40
参数处理是逆向的,但是参数压栈是正向的.






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