error: invalid type argument of '->' (have 'JMIoInterface')
时间: 2024-12-10 13:42:26 浏览: 20
这个错误提示通常出现在C++或Java等语言的环境中,特别是当你试图使用箭头操作符 `->` 时。`->` 是指向成员操作符,它用于访问结构体、类或指针的对象的成员变量或成员函数。
在这个错误中,"error: invalid type argument of '->'" 表示你尝试将一个无效类型的表达式作为左操作数传递给 `->`,在这里可能是 "JMIoInterface"。这表明你可能在一个不是指针的类型上使用了 `->`,或者 `JMIoInterface` 并不是一个可以包含成员的类或者它并没有声明成员需要通过 `->` 访问。
例如:
```cpp
JMIoInterface obj; // JMIoInterface 类型的实例
// 错误用法:
obj.memberFunction(); // 正确应该是 obj->memberFunction();
```
修复这个问题,你需要确认 `JMIoInterface` 是否有一个成员函数你想调用,如果是类实例,则应该直接调用成员函数,而不是使用 `->`;如果是一个接口或者结构,并且你需要通过指针或引用来访问其成员,那么确保你在正确的位置使用了指针或引用。
相关问题
error: invalid type argument of ‘->’ (have ‘AVPacket’ {aka ‘struct AVPacket’}) 129 | fwrite(&(pkt->data), 1, pkt->size, fp);
这个错误意味着你正在尝试使用箭头运算符(->)来访问一个非指针类型的变量。在这种情况下,您正在尝试访问一个 AVPacket 结构体的数据成员,但是您使用的是箭头运算符而不是点运算符。应该使用点运算符来访问结构体的成员。
正确的写法应该是:
```
fwrite(pkt.data, 1, pkt.size, fp);
```
阅读全文