C++笔试题目及答案
C++由于语言本身过度复杂,这甚至使人类难于理解其语义。更为糟糕的是C++的编译系统受到C++的复杂性的影响,非常难于编写,即使能够使用的编译器也存在了大量的问题,这些问题大多难于被发现。下面就由为大家介绍一下C++笔试题目及答案的文章,欢迎阅读。
C++笔试题目及答案篇1
1 What s overload function in C++?
重载 是指编写一个与已有函数同名但参数表不同的函数。构成重载的条件是:在相同的范围内(比如说在同一个类中),函数名字相同,但函数参数不同(要么参数类型不同,要么参数个数不同,要么两者都不同)
2 A What s inline function in C++?
内联函数是指嵌入代码,就是在调用函数的地方不是跳转,而是直接把代码写到那里去。它与普通函数相比能提高效率,因为它不需要中断调用,在编译的时候内联函数可以直接把代码镶嵌到目标代码中去,省去了函数调用的开销,但是它是以代码膨胀为代码的(以增加空间消耗为代价)
B When ould you use inline function?
(1)一个函数不断的被重复调用
(2)函数只有简单的几行,且函数内部包含:for,hile,sitch语句。
C Please rite sample code
void Foo(int x,int y);
inline void Foo(int x,int y){}
需要注意的是:关键字inline必须与函数定义体放在一起才能使函数构成内联,仅将inline放在函数声明前不起任何作用。
3 Which of the folloing are legal? For those usages thatare illegal, explain hy
const int buf;
不合法。因为定义const变量(常量)时必须进行初始化,而buf没有初始化。
int cnt = 0;
const int sz = cnt; 合法。
cnt++; sz++;
不合法。因为修改了const变量sz的值。
4 Please point out the errors in the folloing C++ code Andhy?
sitch ( ival ) {
case 1, 3, 5, 7, 9:oddcnt++; break;
case 2, 4, 6, 8, 10:evencnt++; break; }
貌似case 不能把所有的情况并列列出来,没见过 case 1, 3, 5, 7,9:这种写法,改为 case1:oddcnt++; case 3:oddcnt++;
C++笔试题目及答案篇2
1 Given the folloing base and derived class definitions:
class Base