cpp将一个类赋值给void
不建议将一个类直接赋值给void**,因为void是一个指向指针的指针,而类是一个对象,两者类型不匹配。如果非要这样做,可以将类的地址赋值给void*,再将void*赋值给void。
示例代码:
class MyClass {
public:
int value;
};
MyClass obj;
obj.value = 123;
void* ptr = &obj; // 将类的地址赋值给void*
void** pptr = &ptr; // 将void*的地址赋值给void**
这样做的问题是,由于void**是一个指向指针的指针,而指针的大小可能与类的大小不同,因此可能会导致指针截断或内存溢出等问题。因此,建议在实际开发中避免这样做。
原文地址: https://www.cveoy.top/t/topic/cnID 著作权归作者所有。请勿转载和采集!