/home/wuyan/test/parse_threads.cpp:37: error: invalid use of non-static member function 'void parse_threads::read(int, QString)' sP104_class.setCallback(read);
时间: 2024-02-18 11:05:12 浏览: 34
这是一个编译错误,错误代码在第37行,错误原因是`read`是一个非静态成员函数,不能直接作为回调函数使用。需要将它改为静态成员函数或者将对象的地址作为参数传递给回调函数。可以尝试将代码修改为以下形式:
```
sP104_class.setCallback(&parse_threads::read);
```
或者将`read`函数改为静态成员函数:
```
static void read(int fd, QString data);
```
相关问题
/home/wuyan/test/parse_threads.h:771: error: no type named 'iterator' in 'class QCache<QString, QVector<DP104> >'
这个错误提示意味着在parse_threads类的头文件中的第771行,您尝试使用QCache类的iterator类型,但是QCache类没有名为iterator的嵌套类型。
如果您想遍历QCache中的所有键值对,可以使用QCache的keyList函数获取QList类型的所有键列表,然后使用for循环遍历键列表并使用QCache的object函数获取每个键对应的值。以下是示例代码:
```
QList<QString> keys = QCache<QString, QVector<T>>::instance().keyList();
for (auto it = keys.begin(); it != keys.end(); ++it) {
QVector<T> value = QCache<QString, QVector<T>>::instance().object(*it);
// do something with value
}
```
这里首先使用QCache类的instance()函数获取QCache类的单例对象,然后调用keyList函数获取所有键的列表。接下来,使用for循环遍历键列表,并使用QCache的object函数获取每个键对应的值。最后,您可以对每个值执行相应的操作。
/home/wuyan/test/parse_threads.h:771: error: conversion from 'QVector<DP104>*' to non-scalar type 'QVector<DP104>' requested QVector<T> firstValue =t_cache.take(key); ^~~~~~~~~~
这是一个编译错误,错误信息显示在文件 `/home/wuyan/test/parse_threads.h` 的第 771 行,错误类型是类型转换错误。具体地,程序试图将类型为 `QVector<DP104>*` 的指针转换为类型为 `QVector<DP104>` 的对象,但是这种类型转换是不合法的。
可能的原因是程序在某个地方将 `QVector<DP104>` 对象插入了一个名为 `t_cache` 的容器,并且使用了指针的方式进行了插入。在取出该对象时,程序使用了 `take` 方法,并试图将其转换为对象类型,但是由于插入时使用了指针,所以导致了类型转换错误。
解决这个问题的方法是,检查代码中涉及到 `t_cache` 的部分,确保在插入对象时使用的是对象本身而非指针。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)