1  C++中允许函数的嵌套调用,但不允许函数的嵌套定义

2  构建派生类对象时,先调用基类的构造函数,在调用成员对象的构造函数,最后调用派生类构造函数。

3  volatile关键字

  volatile提醒编译器其后面定义的变量随时可能发生改变,因此编译后的程序每次需要存储或者读取这个变量的时候,都直接从变量的地址读取数据。如果没有这个关键字,则编译器可能会优化该变量的存取,即从寄存器中读取,如果这个变量由别的程序更新的话,将出现不一致的现象。

4  C++中不能重载的运算符 .  .*  ?:  ::  sizeof  

  只能使用成员函数重载的运算符有:=  ()  []  ->  new  delete

  单目运算符最好重载为成员函数

  对于复合的赋值运算符如+=, -=, *=, /=, %=, &=, |=, !=, ~=, <<=, >>=建议重载为成员函数

  对于其它运算符,建议重载为友元函数

5  reinterpret_cast:将一种类型的指针转换为另一种类型的指针或整数,以及其相反的行为,类似于C的强制转换,不做任何类型检测,操作的结果是二进制为拷贝

  static_cast:允许执行隐式类型转换以及相反的转换操作

  dynamic_cast:用于对象的指针或引用,当用于多态类型转换时,允许隐式转换及相反的过程。与static_cast的不同之处,在相反的转换过程中,dynamic_cast会检擦操作的有效性,如果返回的不是被请求的有效完整对象,则返回null,反之,返回这个有效的对象,如果引用返回无效时则会抛出bad_cast的异常。另外,static_cast不能转换有多态的继承和虚继承和非public继承,但dynamic_cast能转换表现为多态的基础和非public继承。还有的差别就是运行时检测,dynamic会花费更多时间。

  const_cast:用于操作被转换对象的const熟悉,设置或移除。

6  静态函数和静态变量属于类本身,不与类对象绑定,因此不能使用this指针;在类定义时,不能对对象直接进行初始化;一般成员变量需要在类内进行初始化;静态成员变量必须在类外初始化,静态成员常量在类中初始化。

7  Java不完全算编译型语言,其编译的字节码文件运行时是解释执行的。java和C++的类也不都是静态绑定的,比如C++的虚函数,Java的父类引用子类对象的情况。Java数组也会溢出。

    

C++面试中可能考察的基础知识(1)的更多相关文章

  1. Java中实现异常处理的基础知识

    Java中实现异常处理的基础知识 异常 (Exception):发生于程序执行期间,表明出现了一个非法的运行状况.许多JDK中的方法在检测到非法情况时,都会抛出一个异常对象. 例如:数组越界和被0除. ...

  2. 守护线程在logback中的使用 - 论基础知识的重要性

    守护线程在logback中的使用 先说问题,在java应用中,logback的异步Appender是怎么在主线程结束后,停下来的? 复盘 我在一个logback的测试用例中,写了这样的代码和logba ...

  3. 《吊打面试官》系列-Redis基础知识

    前言Redis在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在Redis的使用和原理方面对小伙伴们进行360°的刁难.作为一个在互联网公司面一次拿一次offer的面霸(请允许我使用一下 ...

  4. [不得不知道系列]Java线程面试你不得不知道的基础知识一

    Java内存管理面试指南一 Java基础面试指南一 Java基础面试指南二 Java基础面试指南三 Java基础面试指南四 Java线程面试指南一 Java线程面试指南二 Redis面试指南一 Kaf ...

  5. react组件在项目中的应用(基础知识)

    上图我是定义了5个模块,全部都渲染在一个组件里面.可以先看看我的代码结构 我将Hello文件夹下的index.jsx文件作为父组件,最后渲染在根组件中. 那我们怎么输出这个Hello组件呢?要达到上图 ...

  6. Kafka面试你不得不知道的基础知识

    Java内存管理面试指南一 Java基础面试指南一 Java基础面试指南二 Java基础面试指南三 Java基础面试指南四 Java线程面试指南一 Java线程面试指南二 Redis面试指南一 Kaf ...

  7. 【Unity】6.1 Unity中的C#脚本基础知识

    分类:Unity.C#.VS2015 创建日期:2016-04-16 一.简介 1.常用的C#数据类型 这里简单介绍用Unity开发游戏时,最常用的一些数据类型. (1)基本类型 int.float. ...

  8. 第11天:JS中变量、字符串基础知识

    一.js简介用来制作页面交互效果,提高用户体验. js页面效果:轮播图.选项卡.地图.表单验证javascript是弱变量类型的语言,变量只需要用var来声明.而java要根据变 量类型来声明, in ...

  9. C++程序员面试题目总结(涉及C++基础、多线程多进程、网络编程、数据结构与算法)

     说明:C++程序员面试题目总结(涉及C++基础知识.多线程多进程.TCP/IP网络编程.Linux操作.数据结构与算法) 内容来自作者看过的帖子或者看过的文章,个人整理自互联网,如有侵权,请联系作者 ...

随机推荐

  1. Java 线程安全问题

    线程安全问题产生原因: 1.多个线程操作共享的数据: 2.操作共享数据的线程代码有多条.   当一个线程正在执行操作共享数据的多条代码过程中,其它线程也参与了运算, 就会导致线程安全问题的发生. cl ...

  2. 操作系统作业一——仿CMD

    实验一.CMD实验 2014商软2  卓宇靖  4238 一.        实验目的 (1)掌握命令解释程序的原理: (2)掌握简单的DOS调用方法: (3)掌握C语言编程初步. 二.        ...

  3. [2017BUAA软工]第一次博客作业

    一.一些疑问 看书看得比较慢,暂时只思考了以下几个问题,有些自问自答,不知道符合不符合要求…… [1] 第一章中书上提到了这样一个例子: “如果一架民用飞机上有需求,用户使用它的概率是百万分之一,你还 ...

  4. 【final】Scrum站立会议第2次....11.20

    小组名称:nice! 组长:李权 成员:于淼  刘芳芳韩媛媛 宫丽君 项目内容:约跑app(约吧) 时间:2016.11.9    12:00——12:30 地点:传媒西楼220室 本次对fnal阶段 ...

  5. 用Python实现求Fibonacci数列的第n项

    1. 背景——Fabonacci数列的介绍(摘自百度百科): 斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonacc ...

  6. 我的 MyBatis 实现的 Dao 层

    学了 Mybatis 之后,发现用 Mybatis 写 Dao层实在是简便多了,主要是在表的映射这块简单了很多.下面是我实现的使用 Mybatis 实现的简单的操作用户表的 Dao 层. 使用 Myb ...

  7. 利用书签功能对TDBGrid控件中多个记录的处理

    DELPHI 的TDBGrid 控 件 主 要 用 来 处 理 数 据 表, 它 的 属 性 中 有 一 个dgMultiSelect, 若 此 属 性 设 定 为TRUE, 则 可 以 选 中 多 ...

  8. 两个list比较相等元素

    1.实现方式 public class list { public static void main(String[] args) { List<String> list1 = new A ...

  9. 【转】小心stringstream.str()字符串用法的陷阱

    --------------------- 作者:心中那自由的世界 来源:CSDN 原文:https://blog.csdn.net/119365374/article/details/7744678 ...

  10. 【状压DP】【CF8C】 Looking for Order

    传送门 Description 给你n个点,每次可以从起点到最多两个点然后回到起点.求经过每个点最少一次的最短欧氏距离和是多少 Input 第一行是起点的坐标 第二行是点的个数\(n\) 下面\(n\ ...