#include <iostream>
using namespace std;

struct Settings
{
private:
	struct GeneralSettings {
		int gi1, gi2;
	} static _gs;
public:
	int i1, i2;
	GeneralSettings& gs;
	Settings(int i1, int i2) : i1(i1), i2(i2), gs(_gs) {}
	
	void do_something() const {
		printf("%d %d %d %d\n", i1, i2, gs.gi1, gs.gi2);
	}
};

Settings::GeneralSettings Settings::_gs;

int main()
{
  Settings s1(0,1);
  Settings s2(1,0);

  s1.gs.gi1 = 1;
  s2.gs.gi2 = 1;

  s2.do_something();
}