騰訊技術(shù)類校園招聘筆試試題及答案(2)
解析:
子類對象生成時:先調(diào)用父類的構(gòu)造函數(shù),然后在調(diào)用子類的構(gòu)造函數(shù);析構(gòu)時相反
4.在一個cpp文件里面,定義了一個static類型的全局變量,下面一個正確的描述是:A
A.只能在該cpp所在的編譯模塊中使用該變量
B.該變量的值是不可改變的
C.該變量不能在類的成員函數(shù)中引用
D.這種變量只能是基本類型(如int,char)不能是C++類型
解析:
Static全局變量和普通全局變量:
針對:一個工程里有多個cpp文件時
相同點:存儲方式相同,都是靜態(tài)存儲;
不同點:作用域不同。
普通全局變量---作用域是整個源程序(含有多個源文件),在各個源文件中都有效
Static全局變量----作用域是當前源文件
5.觀察下面一段代碼:
class ClassA
{
public:
virtual ~ ClassA(){};
virtual void FunctionA(){};
};
class ClassB
{
public:
virtual void FunctionB(){};
};
class ClassC : public ClassA,public ClassB
{
public:
};
ClassC aObject;
ClassA* pA=&aObject;
ClassB* pB=&aObject;
ClassC* pC=&aObject;
關(guān)于pA,pB,pC的取值,下面的描述中正確的是:C
A. pA,pB,pC的取值相同 B. pC=pA+pB C. pA和pB不相同 D.pC不等于pA也不等于pB
6. 參照1.5的代碼,假設(shè)定義了ClassA* pA2,下面正確的代碼是:D
A. pA2=static_cast
B. void* pVoid=static_cast
pA2=static_cast
C. pA2=pB;
D. pA2=static_cast