您的位置:首页 > 编程语言 > C语言/C++

C++面试总结 笔试基础知识常考点

2016-08-14 23:25 609 查看
  所有总结点仅供参考,不保证完全正确

1. 引用和指针的区别

  ① 引用必须初始化,指针可以不初始化

  ② 引用不可以为空,指针可以为空(野指针)

  ③ 引用绑定的值不能改,指针可以

  ④ 不能定义引用型数组,可以定义指针数组

  建议: 在C++中尽量使用引用,而少使用指针,因为容易出现野指针、容易出现段错误等。

2. 函数重载的方式

  ① 函数名相同,参数个数不同

  ② 函数名相同,参数类型不同

  ③ 函数名相同,参数顺序不同

  ④ 函数名相同,const修饰的常函数和普通成员函数构成重载

3. 函数重载的原理

    C++编译器通过对函数进行换名,将参数表信息体现在新的函数名中,从而实现重载,

  我们可以编译一个汇编文件来查看相关重载函数。

  如: void show(int i, int j){}

    _Z4showii; <----换名之后的新名字。

       4表示函数名的字符串个数。ii则是去的两个int的首字母。

    void show(int i, double j){}

    _Z4showid;<----换名之后的新名字

4. const与define的区别

  const定义的常量,会分配大小,可以用sizeof计算

  define定义的常量,只做替换

5. static函数

  static修饰局部变量,生命周期变长。

  static修饰全局变量,作用域属于当前文件,防止其他文件引用。

  static修饰函数,生命周期变长

static修饰类成员函数,没有this指针,该成员属于整个类,而不是单一的对象。

  static成员变量,必须在类的外部单独定义

    格式: 数据类型 类名::静态成员变量 = 初始值

6. include<>与include “”区别

  indlude<>在系统目录中去找相关文件

  include“ ” 在当前目录中去找相关文件

7. 自增减运算符

  前缀自增减运算符: 表达式的值是增减以后的值,返回增减以后的值

  后缀自增减运算符: 表达式的值是增减以前的值,返回增减以前的副本

  

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