D:\QTprojiect\Data_Analysis_tool\main.cpp:14: error: no viable conversion from 'QAxObject *' to 'QAxObject'
时间: 2024-04-06 21:31:51 浏览: 17
这个错误是因为你在进行类型转换时出了问题。可能是因为你在某些地方使用了指针而不是实际的对象,导致编译器无法正确地进行类型转换。
建议你仔细检查代码中涉及到类型转换的地方,确认是否使用了正确的对象或指针,并确保代码中所有需要进行类型转换的地方都能够正确地进行转换。另外,你也可以考虑使用动态类型转换(dynamic_cast)来避免这种类型转换错误的发生。
相关问题
D:\Qt\Scada_IPCE\IPCE_Core\Main\main.cpp:18: error: no viable overloaded '='
这个错误通常出现在你尝试将一个值赋给一个不兼容的类型的变量时。在给出的错误信息中,指定了发生错误的文件和行号,即D:\Qt\Scada_IPCE\IPCE_Core\Main\main.cpp的第18行。
要解决这个问题,首先需要检查第18行的代码,找到出错的赋值语句。然后,确保将正确类型的值赋给该变量。可能需要检查变量的声明和初始化,以确保其类型与所赋的值兼容。
如果你能提供第18行的代码和相关上下文,我就可以给出更具体的帮助。
QAxObject workbooks = excel.querySubObject("Workbooks");出现: error: no viable conversion from 'QAxObject *' to 'QAxObject'怎么解决
这个错误提示是因为在使用 QAxObject 的 querySubObject() 函数时,返回的是指针类型 QAxObject *,而你把它赋值给了实际对象类型 QAxObject,导致类型不匹配。
解决这个问题的方法是将 QAxObject * 指针类型改为实际对象类型 QAxObject,例如:
```cpp
QAxObject workbooks = *excel.querySubObject("Workbooks");
```
或者,你也可以使用指针类型 QAxObject *,但需要修改变量类型为指针类型,例如:
```cpp
QAxObject *workbooks = excel.querySubObject("Workbooks").value<QAxObject*>();
```
这样就能正确地将 QAxObject * 转换为 QAxObject 类型,避免了类型不匹配的错误。