zoukankan      html  css  js  c++  java
  • C++面试总结 笔试基础知识常考点

      所有总结点仅供参考,不保证完全正确

    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.  自增减运算符

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

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

      

    未完待续...

  • 相关阅读:
    前端性能优化——写给网页设计师和前端工程师看的
    V8引擎——详解
    Perl_实用报表提取语言
    qs.stringify和JSON.stringify()
    js之history
    js考察this,作用域链和闭包
    css table之合并单元格
    js手机浏览器浏览WebApp弹出的键盘遮盖住文本框的解决办法
    windows 杀进程
    axios库的使用
  • 原文地址:https://www.cnblogs.com/jiangson/p/5771349.html
Copyright © 2011-2022 走看看