You need to define temp
, add this after class Vechicle
:
class Vehicle
{
// Left out class code for brevity
void useTemp() { temp = 200 ; } // Adding method inside class the uses temp
};
int Vehicle::temp = 0 ;
Note, you do not need static
keyword when you define temp
. Since it is static
you do not need an instance of the class to access the variable, so the code you had in main
is correct:
Vehicle::temp=100;
std::cout << Vehicle::temp << std::endl;
Vehicle v1 ;
v1.useTemp() ;
std::cout << Vehicle::temp << std::endl;