[Qt Quick 踩坑] QML端函数参数未定义

在QML中链接C++信号本是一件简单的事情,但是今天遇到了一个十分无语的事情,c++端发出了一个信号,信号的参数是一个时间戳,类型为std::in64_t,这个信号链接到QML端时,打印出来的数值永远是undefine
排查良久终于找到解决方案,将int64_t换成qint64即可。

int64_t 的真正定义是 long int,而 qint64则是 long long,c++类型到js类型的转换工作是由Qt完成的,我猜测可能是它没有针对long int做转换。遗憾的是我并未在官方文档中找到相关描述,如果有大佬发现依据,还请不吝赐教。

posted @ 2023-03-15 10:01  Smalldy  阅读(72)  评论(0编辑  收藏  举报