腾讯的一个笔试题
2012-04-13 10:04
183 查看
观察下面一段代码:
class ClassA
{
public:
virtual ~ ClassA(){};
virtual void FunctionA(){};
};
class ClassB
{
public:
virtual void FunctionB(){};
};
class ClassC : public ClassA,public ClassB
{
public:
};
ClassCaObject;
ClassA* pA=&aObject;
ClassB* pB=&aObject;
ClassC* pC=&aObject;
关于pA,pB,pC的取值,下面的描述中正确的是:
A.pA,pB,pC的取值相同. B.pC=pA+pB
C.pA和pB不相同 D.pC不等于pA也不等于pB
解答:PA=PC PB的地址比他们都大点
class ClassA
{
public:
virtual ~ ClassA(){};
virtual void FunctionA(){};
};
class ClassB
{
public:
virtual void FunctionB(){};
};
class ClassC : public ClassA,public ClassB
{
public:
};
ClassCaObject;
ClassA* pA=&aObject;
ClassB* pB=&aObject;
ClassC* pC=&aObject;
关于pA,pB,pC的取值,下面的描述中正确的是:
A.pA,pB,pC的取值相同. B.pC=pA+pB
C.pA和pB不相同 D.pC不等于pA也不等于pB
解答:PA=PC PB的地址比他们都大点
实际运行一下,选C, 因为 ClassA* pA=&aObject; ClassB* pB=&aObject; ClassC* pC=&aObject; 这三行代码实际等价于: ClassA* pA=static_cast<ClassA*>(&aObject); ClassB* pB=static_cast<ClassB*>(&aObject); ClassC* pC=&aObject; 存在隐式转换的,也就是说源代码等号右边虽然写法都一样,但编译器的解释是不一样的.
相关文章推荐
- 腾讯的一道笔试加分题——给定一个数组构造另一个数组
- 一个简单的计算器模拟程序-2011腾讯笔试填空题
- 将一个递归算法改为对应的非递归算法时,通常需要使用( )---腾讯2014研发笔试卷
- 腾讯模拟笔试编程题--根据输入的点坐标判断是够能构成一个正方形
- 一道腾讯笔试题(已知一个数组,不使用除法构造另一数组)
- [腾讯笔试]求一个字符串删除若干字符可构成一个回文串
- 一个腾讯的笔试题,比较有意思
- 输入一个字符串,输出该字符串中字符的所有组合。(腾讯2014笔试附加题)
- 腾讯笔试题——用1,1,2,2,4,4,8,8...2^i,2^i拼凑成一个整数n,求问多少种拼凑方法
- 对于一个非常大的数,如何快速高效返回比它小的最大质数【腾讯笔试题】
- 给定一个数组a[N],我们希望构造数组b[N]。。(2013腾讯实习生笔试题)
- 腾讯笔试题:猜字游戏---猜1-100之间一个数字,最少多少次?第一次猜的数是几?
- 2016腾讯笔试编程题java实现求一个数等于两个质数的和的组合数(2016-09-11 19:00)
- 空间系统一步一个脚印之笔试面试——腾讯面试题
- 给定一个数组a[N],我们希望构造数组b[N]。。(2013腾讯实习生笔试题)
- 新九月百度人搜,阿里巴巴,腾讯华为京东360笔试面试二十题
- 算法与数据结构——算法题32:整数集合的交集(腾讯笔试) ? 待解决
- 腾讯测试工程师笔试面试记录
- 2012九月百度人搜,阿里巴巴,腾讯华为京东小米笔试面试二十题
- 虔诚的学习者 腾讯2013年实习生笔试题