笔试汇总(4)

  • int* - 指向int的指针

  • int const * - 指向const int的指针

  • int * const - const指向int的指针

  • int const * const - const指向const int的指针

  • int ** - 指向int的指针

  • int ** const - 指向int的指针的const指针

  • int * const * - 指向int的const指针的指针

  • int const ** - 指向const int指针的指针

  • int * const * const - 指向int的const指针的const指针

根据类型兼容规则,基类指针(或引用)可以指向其派生类的实例,但在非虚函数的情况下,通过基类指针(或引用)却只能调用基类的函数成员,无法调用其所指实例(派生类)的函数成员. 基类(父类)派生(子类)

1. vector的底层实现就是一个自动扩展的数组,如果元素本身无序,那么存储的时候也是无序的;

2. stack的底层实现就是一个限制输入输出位置的deque双端队列,所以stack里面的数据无序的时候,存储的时候也是无序的;

3. map和set的底层实现都是红黑树,红黑树是一种没那么严格的平衡二叉树(平衡二叉树肯定是排序二叉树),但是红黑树里面的元素肯定是有序的;

A.private修饰方法不能被重写,虚函数必须被重写.

B.局部变量不应该有访问修饰符.

C.实方法不能用abstract修饰.

Java虚拟机里提供了哪些调用字节指令:

invokestatic       静态方法

invokespecial    构造方法,private方法,父类方法.

invokevirtual,invokeinterface    调用重写的方法(动态单分派).

invokedynamic  动态类型语言,动态方法调用(lambda表达式)

Python3中  str为unicode字符(内部编码utf-16),byte无编码

编译程序目标代码生成阶段主要任务是:把中间代码(字节码)变换成依赖具体机器的目标代码

C语言函数调用时,通过堆栈传递参数

编译程序包括:

笔试汇总(4)