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

JACKY_ZZ[貓貓愛吃魚]

春風(fēng)拂面兩頰紅,秋葉灑地一片金。 夏荷搖曳一身輕,冬雪覆蓋大地銀。
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ā)表評論。
網(wǎng)站導(dǎo)航: 博客園   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>
            蜜桃久久av一区| 亚洲裸体视频| 欧美在线短视频| 国内外成人免费视频| 久久精品理论片| 性一交一乱一区二区洋洋av| 国产日韩在线看片| 久久人人爽国产| 久久久精品一区| 亚洲电影在线播放| 91久久国产综合久久91精品网站| 欧美高清视频一区| 在线亚洲激情| 午夜久久tv| 亚洲高清123| 日韩一级精品| 国产亚洲网站| 亚洲高清不卡一区| 国产精品高潮呻吟| 久久婷婷久久| 欧美区日韩区| 久久黄色小说| 欧美fxxxxxx另类| 亚洲欧美另类在线| 老司机精品视频一区二区三区| 亚洲乱码国产乱码精品精| 一本综合久久| 亚洲国产裸拍裸体视频在线观看乱了中文 | 亚洲日本国产| 日韩亚洲欧美精品| 国内揄拍国内精品久久| 亚洲国产精品www| 国产精品日韩久久久| 欧美激情片在线观看| 国产精品亚洲成人| 亚洲国产精品一区二区第四页av| 国产精品自在欧美一区| 91久久精品一区二区三区| 国产欧美一区二区精品婷婷| 亚洲国产精品成人一区二区 | 欧美1区免费| 欧美在线综合| 欧美日韩一区二区免费视频| 欧美成年人网站| 国产精品日本精品| 亚洲精品自在久久| 亚洲国产成人久久| 久久er99精品| 性xx色xx综合久久久xx| 欧美日韩视频在线一区二区 | 亚洲深夜福利| 亚洲美女精品一区| 久久精品五月| 久久精品99国产精品日本| 欧美香蕉视频| 亚洲精品视频在线看| 亚洲国产老妈| 久久影视精品| 免费日韩av| 激情欧美一区| 久久大逼视频| 久久综合五月天婷婷伊人| 国产精品午夜在线观看| 亚洲一二区在线| 亚洲男人影院| 国产精品香蕉在线观看| 在线中文字幕不卡| 亚洲在线黄色| 国产精品色午夜在线观看| 亚洲一区二区三区精品在线观看| 亚洲视频 欧洲视频| 欧美日韩在线高清| 在线亚洲欧美专区二区| 午夜免费日韩视频| 国产日本亚洲高清| 久久av一区二区三区亚洲| 久久久噜噜噜久久中文字免| 黄色成人在线观看| 另类成人小视频在线| 男女视频一区二区| 亚洲精品一区二区在线| 欧美搞黄网站| 在线亚洲电影| 久久精品成人| 亚洲黄色视屏| 欧美精品免费观看二区| av成人动漫| 久久精品理论片| 亚洲国产女人aaa毛片在线| 另类综合日韩欧美亚洲| 亚洲人成艺术| 欧美一区=区| 在线观看成人小视频| 欧美裸体一区二区三区| 一区二区三区高清| 久久理论片午夜琪琪电影网| 亚洲国产影院| 国产精品女同互慰在线看| 久久精品国语| 亚洲精品久久久久久久久久久| 亚洲一区二区在线免费观看| 激情成人亚洲| 欧美日韩日本网| 久久九九国产精品怡红院| 欧美激情一二三区| 性一交一乱一区二区洋洋av| 精品动漫3d一区二区三区| 欧美日本高清视频| 久久福利电影| 9l国产精品久久久久麻豆| 蜜桃av一区二区| 亚洲婷婷在线| 亚洲黄页一区| 国产亚洲精品一区二555| 欧美精品亚洲一区二区在线播放| 欧美一级成年大片在线观看| 亚洲黄色免费网站| 久久久久久久尹人综合网亚洲| 一区二区福利| 亚洲人成网站精品片在线观看 | 欧美视频中文字幕| 久久久亚洲欧洲日产国码αv| 9l视频自拍蝌蚪9l视频成人| 欧美电影在线观看完整版| 欧美亚洲一区在线| 日韩一级成人av| 亚洲国产精品毛片| 狠狠色综合播放一区二区| 国产精品久久久久一区二区三区共| 理论片一区二区在线| 欧美专区在线观看| 亚洲综合首页| 亚洲天堂男人| 一区二区三区导航| 亚洲欧洲日产国产网站| 欧美福利影院| 欧美成人网在线| 久久夜精品va视频免费观看| 久久国产手机看片| 午夜亚洲精品| 亚洲综合清纯丝袜自拍| 亚洲深夜影院| 亚洲视频1区2区| 亚洲私人黄色宅男| 亚洲夜间福利| 亚洲男人av电影| 午夜宅男久久久| 欧美伊人久久大香线蕉综合69| 午夜精品久久久| 欧美在线啊v| 久久精品成人| 久久久另类综合| 巨乳诱惑日韩免费av| 蜜桃久久av| 欧美福利专区| 亚洲黄色一区| 亚洲精品美女久久7777777| 亚洲精选视频在线| 亚洲视频中文| 欧美在线啊v一区| 久久久爽爽爽美女图片| 免费亚洲电影| 欧美日韩综合另类| 国产精品伊人日日| 在线观看免费视频综合| 亚洲经典视频在线观看| 日韩午夜黄色| 香蕉乱码成人久久天堂爱免费| 久久爱www| 欧美高清视频一区二区三区在线观看 | 亚洲六月丁香色婷婷综合久久| 日韩视频不卡中文| 欧美一进一出视频| 模特精品裸拍一区| 99国产精品久久久久久久成人热| 亚洲亚洲精品在线观看| 久久久精品日韩| 欧美日韩大片一区二区三区| 国产精品一区毛片| 亚洲国产日韩欧美在线动漫| 亚洲无线一线二线三线区别av| 久久久精品999| 亚洲人www| 欧美在线亚洲一区| 欧美日韩福利在线观看| 国内揄拍国内精品久久| 99在线热播精品免费99热| 久久久7777| 亚洲精品在线观看免费| 久久成人国产精品| 欧美日韩午夜在线| 亚洲成人原创| 欧美一区二区三区婷婷月色 | 99精品国产一区二区青青牛奶| 欧美在线网址| 国产精品久久久久aaaa九色| 亚洲激情在线播放| 久久久久一区二区| 亚洲一区二区三区国产| 欧美人与性动交α欧美精品济南到|