您的位置:首页 > 其它

武汉华嵌-嵌入式培训专家笔试题目

2014-07-27 23:43 183 查看
[cpp] view
plaincopy

//============================================================================

// Name : main.cpp

// Author : sg131971

// Version :

// Copyright : sg131971@qq.com

// Description : Hello World in C++, Ansi-style

//============================================================================

#include <iostream>

using namespace std;

class A

{

public:

A()

{

cout << __LINE__ << ": " << "1" << endl;

}

virtual ~A()

{

cout << __LINE__ << ": " << "2" << endl;

}

virtual int Add(int n)

{

return 0;

}

};

class B:public A

{

public:

B(int n):num(n)

{

}

virtual ~B()

{

}

virtual int Add(int n)

{

num += n;

return num;

}

private:

int num;

};

class C:public A

{

public:

C(A& obj, int n):a(obj), num(n)

{

cout << __LINE__ << ": " << "3" << endl;

}

virtual ~C()

{

cout << __LINE__ << ": " << "4" << endl;

}

virtual int Add(int n)

{

return a.Add(n + num);

}

private:

A& a;

int num;

};

int main()

{

B b(100);

C c1(b, 1), c2(c1, 2);

cout << __LINE__ << ": " << c2.Add(50) << endl;

return 0;

}

运行结果:

[html] view
plaincopy

17: 1

17: 1

54: 3

17: 1

54: 3

73: 153

58: 4

21: 2

58: 4

21: 2

21: 2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: