趨勢科技的筆試題

時間:2024-10-23 19:14:57 綜合指導 我要投稿
  • 相關推薦

趨勢科技的筆試題

1、#i nclude
class A{
public:
A() {func(0);};
virtual void func(int data) {printf("A1 :%d\n",data);}
virtual void func(int data) const {printf("A2 :%d\n",data);}
void func(char *str) {printf("A3 %s)\n",str);}
};

class B:public A{
public:
void func() {printf("B1 :%s\n","");}
void func(int data) {printf("B2 :%d\n",data);}
void func(char *str) {printf("B3 %s)\n",str);}
};

int main()
{
A *pA;
B b;
const A *pcA;

pA=&b;
pA->func(1);
pA->func("test");
A().func(1);
pcA=&b;
pcA->func(2);
return 0;
}

程序運行的結果:
A1 :0
B2 :1
A3 test)
A1 :0
A1 :1
A2 :2

1) 基類的指針指向派生類對象:那么該指針只能夠調用基類所定義的函數,但是如果該函數為虛函數,則調用該派生類自己的成員函數。(B2 :1)
2) 如果以派生類的指針指向基類對象,則必須事先做明顯的轉型操作,但是這種做法很危險。

2、#i nclude
template
void func(const int &t)
{
cout<}

template
void func(const T&t)
{
cout<}


int main()
{
func(10.3);
func(1000);

return 0;
}

程序運行結果:
10.3
1000

如果上述函數改為
#i nclude

void func(const int &t)
{
cout<}

template
void func(const T&t)
{
cout<}

int main()
{
func(10.3);
func(1000);

return 0;
}

則程序的運行結果為:
10.3
1100

如果使用函數的非模板形式,不能在前面加上template關鍵字。

3、改錯:
#i nclude

class klass
{
public:
klass(){}
private:
~klass(){}
void func(int n){
cout<<"klass!!"< }
public:
void test()
{
func(100);
}
};

int main()
{
klass k;
k.test();

return 0;
}
運行后程序顯示:error C2248: 'klass::~klass' : cannot access private member declared in class 'klass'
證明析構函數的屬性必須為public。
但是,如果把klass k改為klass* pk; pk=new klass; pk->test();程序通過,但是klass不能釋放.

Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1483481

【趨勢科技的筆試題】相關文章:

趨勢科技筆試,筆經分享02-25

校招創新工場,趨勢科技,金和軟件筆試11-21

亞信科技技術類筆試題11-08

網宿科技筆試題(研發類)02-25

中國銀行筆試題回顧,新鮮筆經!11-21

揚智(科技)筆試題目分享 ZZ11-21

迅雷JAVA廣州站二筆筆試題目分享11-21

2009年杭州聚光科技“機械”筆試題目02-18

未來職場的趨勢11-22

大唐移動測試工程師筆經,筆試題目分享11-21

亚洲制服丝袜二区欧美精品,亚洲精品无码视频乱码,日韩av无码一区二区,国产人妖视频一区二区
亚洲精品动漫在线线观看人 | 亚洲日本va在线视频观看 | 亚洲精品制服丝袜在线 | 中文字乱码亚洲∧V日本亚洲 | 亚洲AV综合AV一区二区三区 | 亚洲色欧美色国产综合色 |