指针有两个属性:指向变量/对象的地址和长度
但是指针只存储地址,长度则取决于指针的类型
编译器根据指针的类型从指针指向的地址向后寻址
指针类型不同则寻址范围也不同,比如:
int*从指定地址向后寻找4字节作为变量的存储单元
double*从指定地址向后寻找8字节作为变量的存储单元
void指针则不知道他所指向的变量的大小,,他只知道他所指的空间的起始地址,
1.void指针是一种特别的指针
2.任何指针都可以赋值给void指针
3.void指针赋值给其他类型的指针时都要进行转换
4.void指针不能复引用
5.void指针不能参与指针运算,除非进行转换
6、如果是将一个new好的对象赋值给一个void*指针,当析构的时候就要小心了他不会调用析构函数,也就是丧失了类的功能,也可以算作指针退化吧