您的位置:首页 > 其它

void*指针

2015-12-25 09:51 197 查看
void*指针,是指向任何类型的指针。

关于void*指针:有一下几点要注意:

1 可以把void*类型的指针当做左之来接受其他类型指针的赋值。

不可以把void*类型指针左右右值赋给某一类型的指针。

int val = 1000;
int* int_val = &val;
void *anyTypePointer = nullptr;
anyTypePointer = int_val; //正确
int_val = anyTypePointer ; //错误,编译不通过





原因:c++严格的类型检查

分析:白马是马,马不是白马

2 使用void*指针的时候要对指针进行类型转换

比如:

A:   (*(int*)anyTypePointer) = 10;
B:    std::cout <<(*(int*)anyTypePointer) << std::endl;


原因:c++类型检查
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: