1. C++ 比C的优势主要在哪些地方?
C++语言继承了C语言的优点和市场优势,扩充增加了对开发大型软件颇为有效的方面向对象机制,弥补了C语言不支持代码重用、不适宜开发大型软件的不足,成为一种既可用于表现过程模型,又可用于表现对象模型的当前最富魅力的程序设计语言。
2. inline 函数的特点是什么?
优点:
- 1)inline定义的内联函数,函数代码被放入符号表中,在使用时进行替换(像宏一样展开),效率很高。
- 2)类的内联函数也是函数。编绎器在调用一个内联函数,首先会检查参数问题,保证调用正确,像对待真正函数一样,消除了隐患及局限性。
- 3)inline可以作为类的成员函数,刀可以使用所在类的保护成员及私有成员。
缺点:
内联函数以复制为代价,活动产函数开销
- 1)如果函数的代码较长,使用内联将消耗过多内存
- 2)如果函数体内有循环,那么执行函数代码时间比调用开销大。
3. inline & 宏的不同之处是什么?
区别如下:
- 1)内联在编绎时展开,宏在预编译时展开。
- 2)编译内联函数可以嵌入到目标代码,宏只是简单文本替换。
- 3)内联会做类型,语法检查,而宏不具这样功能。
- 4)宏不是函数,inline函数是函数
- 5)宏定义小心处理宏参数(一般参数要括号起来),否则易出现二义性,而内联定义不会出现。
4. 什么叫做抽象?
抽象是从众多的事物中抽取出共同的、本质性的特征,而舍弃其非本质的特征。