递归火山软件开发平台

标题: 时间段.秒.乘() 函数问题? [打印本页]

作者: 4463424    时间: 2025-2-16 15:01
标题: 时间段.秒.乘() 函数问题?
如下例子,时间段.秒.乘()函数 参数为变量/常量都会报错,直接填数字没问题.

错误: invalid operation: 火山.基本.秒 * 长度 (mismatched types time.Duration and 长整数)


<火山程序 类型 = "通常" 版本 = 1 />

变量 滴答器 <参考 类型 = 滴答器类>
变量 长度 <类型 = 长整数 值 = 10>

常量 a <类型 = 长整数 值 = 10>
滴答器 = 滴答器类.创建 (时间段.秒.乘 (长度))



作者: zmmhcc    时间: 2025-2-16 16:51
强!这瑕疵都被你发现了。
从错误提示中看出,是“time.Duration”和“长整数”不匹配,类型不同的两个值不宜直接相乘,可能是go语言安全机制的原因;
处理方法3选1,试试
处理方法1:试试将时间段.乘()底层源码中的第2个参数,从“长整数”改为“时间段”,同时通过“时间段.取 (长度)”将长整数转换成“时间段”程序就能运行了。
处理方法2:滴答器 = 滴答器类.创建 (时间段.取 (长度))
处理方法3:滴答器 = 滴答器类.创建 (时间段.秒 * 10)
作者: 创世魂    时间: 2025-2-17 08:41
时间段.秒 * 10   这样应该就行了。
作者: 4463424    时间: 2025-2-17 09:39
创世魂 发表于 2025-2-17 08:41
时间段.秒 * 10   这样应该就行了。

这样是可以的,如果传入变量或者常量就会报错。




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