Pét*_*rök 20
基本上是来自C的残余.
它们的用途是什么?
在C语言中,它们被广泛使用,但在C++中,我认为它们很少需要,因为我们有多态性,模板等,它们提供了一种更清洁,更安全的方法来解决C语言中的相同问题.会使用void指针.
我可以让它们指向任何类型的变量吗?
是.但是,正如其他人所指出的那样,你不能直接使用void指针 - 你必须先将它转换为指向具体数据类型的指针.
是的,这是一个C构造(不是C++特定的),它允许您声明指向任何类型的指针变量.除了将它转换回它实际指向的真实对象之外,你不能用这样的指针做任何事情.在现代C++中,void*几乎已经过时了,在很多情况下会产生基于模板的通用代码.