An example code

    技术2022-05-20  67

    // 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

     

     


    最新回复(0)