c++ static members and functions code example
Example 1: static variable in c++
#include <iostream>
#include <string>
using namespace std;
class Player
{
int health = 200;
string name = "Name";
static int count = 0;
public:
Player(string set_name)
:name{set_name}
{
count++;
}
~Player()
{
count--;
}
int how_many_player_are_there()
{
return count;
}
};
int main()
{
Player* a = new Player("some name");
cout << "Player count: " << *a.how_many_player_are_there() << std::endl;
Player* b = new Player("some name");
cout << "Player count: " << *a.how_many_player_are_there() << std::endl;
delete a;
cout << "Player count: " << *b.how_many_player_are_there() << std::endl;
}
Example 2: static in class c++
#include <iostream>
class Entity {
public:
static int x,y;
static void Print() {
std::cout << x << ", " << y << std::endl;
}
};
int Entity:: x;
int Entity:: y;
int main() {
Entity e;
Entity e1;
e.x = 5;
e.y = 6;
e1.x = 10;
e1.y = 10;
e.Print();
e1.Print();
Entity::x;
Entity::Print();
std::cin.get();
}