// lOp.cpp : コンソール アプリケーションのエントリ ポイントを定義します。
//
#include "stdafx.h"
#include <stdio.h>
class X {
public:
X(int a) {fprintf(stdout, "X is created. %d/n", a);}
};
class Y {
public:
Y(int b) {fprintf(stdout, "Y is created. %d/n", b);}
};
class A: public X, public Y{
private:
int m;
public:
A() : m(0), Y(1), X(2) {}
int operator++() {
m++;
return m;
}
int operator++(int) {
m--;
return m;
}
};
class B{
public:
class _Pnt{
public:
int x;
int y;
};
_Pnt m_pnt;
B() { m_pnt.x = 0; m_pnt.y = 100; }
};
class C : public B {
public:
C() {}
};
class D : public C {
public:
D() {}
int getX() { return m_pnt.x; }
int getY() { return m_pnt.y; }
};
int _tmain(int argc, _TCHAR* argv[])
{
A a;
fprintf(stdout, "%d/n", a++);
D d;
fprintf(stdout, "D: x = %d, y = %d/n", d.getX(), d.getY());
C c;
fprintf(stdout, "C: x = %d, y = %d/n", c.m_pnt.x, c.m_pnt.y);
class B::_Pnt pnt;
pnt.x = 10;
pnt.y = 20;
fprintf(stdout, "x = %d, y = %d/n", pnt.x, pnt.y);
getchar();
return 0;
}
result:
X is created. 2
Y is created. 1
-1
D: x = 0, y = 100
C: x = 0, y = 100
x = 10, y = 20