青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

JACKY_ZZ[貓貓愛吃魚]

春風拂面兩頰紅,秋葉灑地一片金。 夏荷搖曳一身輕,冬雪覆蓋大地銀。
posts - 30, comments - 123, trackbacks - 0, articles - 0

VC++/G++ 多態(tài)測試

Posted on 2019-11-28 11:05 jacky_zz 閱讀(206) 評論(0)  編輯 收藏 引用
base.h
 1 #ifndef BASE_H
 2 #define BASE_H
 3 
 4 #include <stdio.h>
 5 
 6 class Base
 7 {
 8 public:
 9     Base(int val) : m_val(val)
10     {
11         printf("Base::Base(int val) @ 0x%08X\n"this);
12     }
13 
14     virtual void say()
15     {
16         printf("void Base::say() @ 0x%08X\n"this);
17         printf("val = %d\n", GetVal());
18     }
19 
20     virtual ~Base()
21     {
22         printf("Base::~Base() @ 0x%08X\n"this);
23     }
24 
25 protected:
26     int GetVal() { return m_val; }
27 
28 private:
29     int m_val;
30 };
31 
32 #endif
child.h
 1 #ifndef CHILD_H
 2 #define CHILD_H
 3 
 4 #include <stdio.h>
 5 #include "base.h"
 6 
 7 class Child : public Base
 8 {
 9 public:
10     Child(int val) : Base(val)
11     {
12         printf("Child::Child(int val) @ 0x%08X\n"this);
13     }
14 
15     void say()
16     {
17         printf("void Child::say() @ 0x%08X\n"this);
18         printf("val = %d\n", GetVal());
19     }
20 
21     ~Child()
22     {
23         printf("Child::~Child() @ 0x%08X\n"this);
24     }
25 };
26 
27 #endif
28 
main.cpp
  1 #include "base.h"
  2 #include "child.h"
  3 
  4 static void test0();
  5 static void test();
  6 static void virfunc_call(Base *base);
  7 
  8 void test0()
  9 {
 10     int src = 1;
 11     int dst;   
 12 
 13 #ifdef WIN32
 14     dst = src;
 15 #else
 16     asm ("mov %1, %0\n\t"
 17         "add $1, %0"
 18         : "=r" (dst) 
 19         : "r" (src));
 20 #endif
 21 
 22     printf("dst=%d\n", dst);
 23 }
 24 
 25 void test(Base *base)
 26 
 27     int addr = 0;
 28 
 29 #ifdef WIN32
 30     printf("[1] addr=0x%08X base=0x%P\n", addr, base);
 31 #else
 32     printf("[1] addr=0x%08X base=0x%08X\n", addr, base);
 33 #endif
 34 
 35 #ifdef WIN32
 36     addr = *((int *)base);
 37 #else
 38     asm (
 39         "movl %0, %1\n\t"
 40         : "=r" (addr)
 41         : "r" (base)
 42     );
 43 #endif
 44 
 45 #ifdef WIN32
 46     printf("[2] addr=0x%08X base=0x%P\n", addr, base);
 47 #else
 48     printf("[2] addr=0x%08X base=0x%08X\n", addr, base);
 49 #endif
 50 }
 51 
 52 static void virfunc_call(Base *base)
 53 {
 54     typedef void (*FUNC)();
 55 
 56     int *pAddrBase = (int *)base;
 57     int addr = *(int *)base;
 58     int *pVirtualFuncBase = (int *)(*pAddrBase);
 59 
 60 #ifdef WIN32
 61     printf("\nvirfunc=0x%P\npAddrBase=0x%P\npVirtualFuncBase=0x%P\n\n", virfunc_call, pAddrBase, pVirtualFuncBase);
 62 #else
 63     printf("\nvirfunc=0x%08X\npAddrBase=0x%08X\npVirtualFuncBase=0x%08X\n\n", virfunc_call, pAddrBase, pVirtualFuncBase);
 64 #endif
 65 
 66     FUNC func = reinterpret_cast<FUNC>(*pVirtualFuncBase);
 67 
 68 #ifdef WIN32
 69     __asm {
 70         mov ecx, base
 71     }
 72 #else
 73     __asm__ __volatile__(
 74         "movl %0, %%ecx"
 75         :
 76         : "r" (base)
 77         :
 78     );
 79 #endif
 80 
 81     func();
 82 }
 83 
 84 int main(int argc, char *argv[])
 85 {
 86     Base *base1 = nullptr, *base2 = nullptr;
 87 
 88     base1 = new Base(1);
 89     // base1->say();
 90     virfunc_call(base1);
 91     // test(base1);
 92     delete base1;
 93 
 94     base2 = new Child(2);
 95     // base2->say();
 96     virfunc_call(base2);
 97     // test(base2);
 98     delete base2;
 99 
100     return 0;
101 }


VC++
cl /DWIN32 main.cpp


G++
g++ -o main main.cpp

只有注冊用戶登錄后才能發(fā)表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲午夜高清视频| 亚洲视屏在线播放| 久久嫩草精品久久久精品| 亚洲欧美日韩专区| 国产一区自拍视频| 美国成人直播| 久久综合激情| 一区二区三区欧美在线| 亚洲一区二区在| 韩国一区二区三区美女美女秀| 老司机精品福利视频| 久久综合亚洲社区| 亚洲欧洲在线免费| 亚洲人成艺术| 欧美国产日韩免费| 一本久道久久综合婷婷鲸鱼| 亚洲激情影院| 欧美视频一区二区三区四区| 亚洲视频导航| 亚洲一区二区三区在线视频| 国产精品揄拍500视频| 欧美一区二区三区视频在线| 亚洲欧美综合网| 红桃视频国产精品| 欧美ed2k| 欧美区国产区| 亚洲综合导航| 欧美亚洲一区二区在线观看| 狠狠综合久久av一区二区小说| 亚洲视频导航| 亚洲男人的天堂在线观看 | 亚洲国产日韩一级| 亚洲第一网站免费视频| 欧美激情一区二区三区在线视频观看 | 狠狠色丁香久久婷婷综合_中| 欧美一区国产一区| 久久久久久999| 亚洲人成网站777色婷婷| 亚洲精品视频免费观看| 国产精品久久毛片a| 久久精品系列| 欧美成年人在线观看| 亚洲在线观看视频| 欧美一区二视频在线免费观看| 国产一区二区三区的电影| 久久国产精品一区二区三区| 久久最新视频| 亚洲美女在线一区| 亚洲婷婷综合久久一本伊一区| 国产精品免费网站| 欧美综合二区| 欧美88av| 99xxxx成人网| 性久久久久久| 在线观看欧美日韩| 一区二区免费在线视频| 国产精品美女一区二区在线观看| 另类国产ts人妖高潮视频| 欧美日韩一区二区高清| 在线一区二区三区四区| 欧美自拍偷拍午夜视频| av成人黄色| 久久全国免费视频| 欧美一区二区免费| 欧美紧缚bdsm在线视频| 免费试看一区| 国产精品色午夜在线观看| 亚洲精品123区| 国产精品久久久久av免费| 亚洲精品国产精品久久清纯直播| 极品尤物久久久av免费看| 亚洲一区二区高清| 国产精品99久久久久久www| 久久影视精品| 久久蜜桃av一区精品变态类天堂| 国产精品久久久久一区| 久久夜色精品国产欧美乱| 国产精品丝袜xxxxxxx| 一区二区国产精品| 一本大道av伊人久久综合| 欧美成人在线影院| 欧美激情精品久久久六区热门| 国产一区二区日韩| 亚洲一区三区视频在线观看| 亚洲视频一区二区免费在线观看| 久久综合国产精品| 老司机精品久久| 精品成人一区二区三区四区| 欧美亚洲一区二区三区| 欧美呦呦网站| 国产精品毛片大码女人| 亚洲伊人久久综合| 亚洲欧美一区二区三区在线| 国产精品白丝jk黑袜喷水| 这里只有视频精品| 午夜精品福利在线| 国产精品午夜电影| 欧美一级电影久久| 老**午夜毛片一区二区三区| 国产专区欧美精品| 久久影视三级福利片| 欧美激情视频一区二区三区在线播放 | 欧美国产日韩一区二区在线观看| 在线观看成人av| 蜜桃av一区二区三区| 亚洲二区视频| 宅男噜噜噜66一区二区| 欧美黄色视屏| 国产亚洲成精品久久| 日韩亚洲精品电影| 中文亚洲免费| 国产欧美日韩麻豆91| 久久成人综合网| 欧美α欧美αv大片| 日韩图片一区| 亚洲成色www8888| 亚洲欧洲久久| 欧美日韩网站| 欧美在线你懂的| 欧美国产精品一区| 亚洲视频在线二区| 国产曰批免费观看久久久| 久久人人爽人人爽爽久久| 亚洲日本精品国产第一区| 午夜精品久久久久久久男人的天堂 | 欧美日本国产精品| 亚洲欧美日韩综合一区| 能在线观看的日韩av| 亚洲小说欧美另类社区| 国产永久精品大片wwwapp| 欧美激情一区二区三区高清视频 | 一区二区三区在线视频免费观看| 欧美成人黑人xx视频免费观看| 在线中文字幕日韩| 亚洲国产成人一区| 久久国产视频网| 一区二区三区回区在观看免费视频| 国产精品视频久久久| 欧美二区在线看| 欧美在线日韩在线| 一区二区三区欧美在线观看| 农村妇女精品| 亚洲欧美视频在线| 亚洲精品欧美精品| 在线 亚洲欧美在线综合一区| 欧美日韩国产精品一区| 久久裸体视频| 香蕉成人久久| 亚洲天堂网站在线观看视频| 亚洲国产天堂久久综合| 美女网站久久| 久久久久一区二区三区| 午夜精品久久久久久久99水蜜桃| 亚洲精品免费电影| 亚洲电影免费在线观看| 国产精品一区在线播放| 国产精品久久波多野结衣| 欧美精品在线视频观看| 美女精品自拍一二三四| 久久青青草综合| 久久精品99国产精品酒店日本| 亚洲午夜精品国产| 一区二区三区你懂的| 亚洲精品久久久久久久久久久久| 狂野欧美激情性xxxx| 久久久久久综合| 亚洲性线免费观看视频成熟| 亚洲久久一区| 日韩系列欧美系列| 日韩小视频在线观看| 红杏aⅴ成人免费视频| 红桃视频国产精品| 国产精品久久久久一区| 国产精品捆绑调教| 国产精品久久99| 欧美久久视频| 欧美美女日韩| 欧美成在线观看| 欧美sm重口味系列视频在线观看| 久久久久久网| 99国产欧美久久久精品| 99re6热只有精品免费观看 | 国产精品hd| 国产精品日韩二区| 国产精品视频网址| 国产自产v一区二区三区c| 国内精品久久久久影院优| 欧美日韩 国产精品| 欧美成人四级电影| 国产精品久久久久秋霞鲁丝| 国产精品日韩精品| 一区二区在线观看视频在线观看| 亚洲国产成人在线播放| 亚洲视频一区二区免费在线观看| 欧美一区免费视频| 一本色道久久综合亚洲二区三区| 久久噜噜噜精品国产亚洲综合| 国产精品久久午夜| 日韩一级免费观看| 牛牛国产精品|