offset1.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 39 行

C
39
字号
extern "C" int printf(const char *, ...);void *vp;int fail = 0;class Foo {public:   virtual void setName() {     printf("Foo at %x\n", this);     if (vp != (void*)this)       fail = 1;   }};class Bar : public Foo {public:  virtual void init(int argc, char **argv) {    printf("Bar's Foo at %x\n", (Foo*)this);    vp = (void*)(Foo*)this;    setName();  }};class Barf : virtual public Bar {public:  virtual void init(int argc, char **argv) { Bar::init(argc, argv); }};class Baz : virtual public Bar, virtual public Barf {public:  virtual void init(int argc, char **argv) { Barf::init(argc, argv); }};Bar *theBar = new Baz();int main(int argc, char **argv) {   theBar->init(argc, argv);   return fail;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?