const_cast标准转换运算符
#include <iostream> using namespace std; class A { public: A() { a=0; } public: int a; }; void main() { const A *pa=new A; //指针指向类 A *pa1=const_cast<A*>(pa); //常量指针被转化为非常量指针,转换后指针指向原来的变量(即转换后的指针地址不变) pa1->a=200; //转换后指针指向原来的对象 pa2为转换后的指针 指向A类 cout<<pa->a<<endl<<pa1->a<<endl; //pca1和pa2指向同一个类 const int b=100; //指针指向基本类型 int *pb=const_cast<int *>(&b); //非常量指针ia 指向int型ica *pb=200; cout<<*pb<<endl<<b<<endl; getchar(); }