如何解决[Error] invalid conversion from 'void*' to 'ListNodePtr {aka listNode*}' [-fpermissive]
时间: 2024-03-16 15:47:35 浏览: 290
invalid conversion from type1 to type2 (解决方案).md
这个错误是因为你试图将 void 指针转换为 ListNodePtr 指针,但是这种转换是无效的。要解决这个错误,你需要在进行指针转换之前,先将 void 指针转换为正确的指针类型。在 C++ 中,可以使用 static_cast 或 dynamic_cast 进行指针类型转换。例如:
```
void* ptr = // some void pointer
ListNodePtr nodePtr = static_cast<ListNodePtr>(ptr);
```
这样就可以将 void 指针转换为 ListNodePtr 指针,而不会出现编译错误。注意,如果 void 指针所指向的实际对象类型与你所转换的类型不匹配,那么转换操作将会失败。因此,在进行指针类型转换时,一定要保证类型匹配,否则可能会导致程序崩溃或产生未定义的行为。
阅读全文