<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    so true

    心懷未來,開創未來!
    隨筆 - 160, 文章 - 0, 評論 - 40, 引用 - 0
    數據加載中……

    C++中突破private的方法

    突破private的方法:
    =====================================
    對于private變量:
    方法一:
    class Y
    {
    public:
     Y(int y=0):m_n(y){};
     int getInt(){return m_n;}
    private:
     int m_n;
    };

    Y y(34);
    cout<<y.getInt()<<endl;
    int* pi=(int*)(&y);
    *pi=347;
    cout<<y.getInt()<<endl;
    方法二:
    int tmp;
    __asm
    {
     mov eax,y.m_n
     mov tmp,eax
     add y.m_n,5
    }
    cout<<tmp<<' '<<y.getInt()<<endl;
    ========================================
    對于private函數:
    class C1
    {
    public:
     virtual void test()
     {
      cout<<"public C1::test()"<<endl;
     }
    };

    class C2: public C1
    {
    private:
     virtual void test()
     {
      cout<<"private C2::test()"<<endl;
     }
    };

    C2 c2;
    C1 * pC1=&c2;
    pC1->test();
    方法二:
    class O;
    typedef void (O::*pO)();

    class O
    {
    public:
     static pO getFunTest()
     {
      return &O::test;
     }
    private:
     void test()
     {
      cout<<"this is a private function of class O:test()"<<endl;
     }
    };
    pO pp=O::getFunTest();
    O o;
    (o.*pp)();

    posted on 2008-07-10 15:58 so true 閱讀(431) 評論(0)  編輯  收藏 所屬分類: C&C++

    主站蜘蛛池模板: 猫咪社区免费资源在线观看| 国产精品亚洲二区在线观看| 在线观看亚洲免费视频| 亚洲av区一区二区三| a毛片免费在线观看| 亚洲免费视频播放| 免费在线观看理论片| 国产一区二区免费视频| 亚洲日本VA午夜在线电影| 国产成人精品日本亚洲专区| 波多野结衣在线免费视频| 污视频网站在线观看免费| 亚洲第一精品电影网| 亚洲国产V高清在线观看| 51在线视频免费观看视频| 免费观看四虎精品成人| 亚洲福利一区二区| 亚洲国产综合精品中文字幕| 美女视频黄免费亚洲| 两性色午夜免费视频| 亚洲国产成人AV在线播放| 337p日本欧洲亚洲大胆精品555588| 免费大片黄手机在线观看| 114一级毛片免费| 99精品免费视品| 国产亚洲综合精品一区二区三区| 亚洲一区二区三区高清| AV在线播放日韩亚洲欧| 浮力影院第一页小视频国产在线观看免费| 暖暖在线视频免费视频| 十八禁的黄污污免费网站| 亚洲永久网址在线观看| 亚洲精品视频免费看| 中文字幕精品亚洲无线码一区| 精品免费久久久久久成人影院| 久久国产色AV免费观看| 丝袜足液精子免费视频| 日韩免费在线中文字幕| 亚洲AV无码一区二区三区性色| 亚洲伊人久久大香线蕉| 亚洲精品第五页中文字幕|