博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++笔试题2(基础题)
阅读量:5102 次
发布时间:2019-06-13

本文共 1973 字,大约阅读时间需要 6 分钟。

温馨提醒:此文续《》

(112)请写出下列程序的输出内容

代码如下:

1 #include 
2 using namespace std; 3 4 class A 5 { 6 public: 7 A() 8 { 9 cout << "A::A()" << endl; 10 }11 virtual ~A() 12 {13 cout << "A::~A()" << endl;14 }15 void fun1() const 16 {17 cout << "A::fun1()" << endl;18 }19 virtual void fun2() const20 {21 cout << "A::fun2()" << endl;22 }23 };24 25 class B : public A26 {27 public:28 B() 29 { 30 cout << "B::B()" << endl; 31 }32 ~B() 33 {34 cout << "B::~B()" << endl;35 }36 void fun1() const 37 {38 cout << "B::fun1()" << endl;39 }40 void fun2() const41 {42 cout << "B::fun2()" << endl;43 }44 };45 46 void Test1(const A * pA)47 {48 pA->fun1();49 pA->fun2();50 delete pA;51 }52 53 void Test2(const B * pB)54 {55 pB->fun1();56 pB->fun2();57 delete pB;58 }59 60 void main()61 {62 cout << "=====Test1====" << endl;63 Test1(new B());64 cout << "====Test2====" << endl;65 Test2(new B());66 system("pause");67 }68 69 // run out:70 /*71 =====Test1====72 A::A()73 B::B()74 A::fun1()75 B::fun2()76 B::~B()77 A::~A()78 ====Test2====79 A::A()80 B::B()81 B::fun1()82 B::fun2()83 B::~B()84 A::~A()85 请按任意键继续. . .86 */

输出内容如上注释。

至于结果为什么是这样的,请参见《》中第(6)条及第(74)条。

或参见随笔《》理论点。

(113)请写出下列程序的输出内容

代码如下:

1 #include 
2 using namespace std; 3 4 void main() 5 { 6 for (int i = 10; --i >= 0; i = i>>1) 7 { 8 cout << (i + 1) << endl; 9 }10 11 system("pause");12 }13 14 // run out:15 /*16 1017 418 119 请按任意键继续. . .20 */

输出内容如上注释。

 (114)多态类中的虚函数表是Compile-Time,还是Run-Time时建立的?

虚函数表是在编译期建立,编译期各个虚函数被组织成了一个虚函数入口地址的数组。

一个对象的隐藏成员--虚函数表指针是在运行期--即构造函数被调用时进行初始化的,这也正是实现多态的关键。

(115)C++模板与泛型编程的区别是什么?

泛型编程就是以独立于任何特定类型的方式编写代码,而模板是泛型编程的基础。

模板是泛型编程所使用的方法,泛型是对模板的推广。

(116)待续......

 

 

Good Good Study, Day Day Up.

顺序 选择 循环 总结

转载于:https://www.cnblogs.com/Braveliu/p/6602495.html

你可能感兴趣的文章
我眼中的技术地图
查看>>
lc 145. Binary Tree Postorder Traversal
查看>>
android dialog使用自定义布局 设置窗体大小位置
查看>>
ionic2+ 基础
查看>>
[leetcode]Minimum Path Sum
查看>>
Aizu - 1378 Secret of Chocolate Poles (DP)
查看>>
IO流写出到本地 D盘demoIO.txt 文本中
查看>>
Screening technology proved cost effective deal
查看>>
mysql8.0.13下载与安装图文教程
查看>>
Thrift Expected protocol id ffffff82 but got 0
查看>>
【2.2】创建博客文章模型
查看>>
Kotlin动态图
查看>>
从零开始系列之vue全家桶(1)安装前期准备nodejs+cnpm+webpack+vue-cli+vue-router
查看>>
Jsp抓取页面内容
查看>>
大三上学期软件工程作业之点餐系统(网页版)的一些心得
查看>>
可选参数的函数还可以这样设计!
查看>>
[你必须知道的.NET]第二十一回:认识全面的null
查看>>
Java语言概述
查看>>
关于BOM知识的整理
查看>>
使用word发布博客
查看>>