[题目]推测该代码的输出结果,并分析为什么

Cplusplus
头像
C艹艹
崭露头角
崭露头角
帖子: 26
注册时间: 2016年09月23日 11:32
拥有现金: 锁定
Has thanked: 4 times
Been thanked: 8 times
联系:

[题目]推测该代码的输出结果,并分析为什么

帖子 #1 C艹艹 » 2016年09月23日 11:34

备注:在群里看到的

Code: [全选] [展开/收缩] [Download] (Untitled.cpp)
  1. #include <stdio.h>
  2.  
  3. struct Object
  4. {
  5.     virtual ~Object() {}
  6. };
  7.  
  8. struct InterfaceA : Object
  9. {
  10.     virtual void FooA() = 0;
  11. };
  12.  
  13. struct InterfaceB : Object
  14. {
  15.     virtual void FooB() = 0;
  16. };
  17.  
  18. struct MyCls : Object, InterfaceA, InterfaceB
  19. {
  20.     void FooA() override
  21.     {
  22.     }
  23.  
  24.     void FooB() override
  25.     {
  26.     }
  27. };
  28.  
  29. int main()
  30. {
  31.     MyCls * pCls = new MyCls;
  32.     InterfaceA * pA = pCls;
  33.     InterfaceB * pB = pCls;
  34.     Object * pObjA = pA;
  35.     Object * pObjB = pB;
  36.  
  37.     printf("%d, %d\n",
  38.         pObjA == pB,
  39.         pObjA == pObjB);
  40.  
  41.     return 0;
  42. }

回到 “C/C++”

在线用户

用户浏览此论坛: 没有注册用户 和 1 访客