#include <iostream> void process(const int &t){ std::cout << "readonly"; } void process(int &val) { val <<= 1; } int main() { int x; std::cin >> x; if (x < 0) { process(static_cast<const int&>(x)); // call read-only overload } else { process(x); // call modifying overload std::cout << x; } return 0; }
Test Cases
Test Results
Input
5
Expected Output
10