#include <iostream> using namespace std; void sqrval(const int *val) { int *p; p = const_cast<int *> (val); // cast away const-ness. *p = *val * *val; // now, modify object through v } int main() { int x = 22; cout << "x before call: " << x << endl; sqrval(&x); cout << "x after call: " << x << endl; return 0; }