面试的3个环节:行为面试、技术面试、面试者提问。
行为面试:项目介绍——项目背景、自己完成的任务、怎么做的、自己的贡献。
自己掌握的技能的介绍。
技术面试:基础知识,高质量的代码、清晰的思路、优化效率的能力、优秀的综合能力。
应聘者提问环节。
1.如果写的函数需要传入一个指针,是否要为该指针加上const,把const加在不同的位置是否有区别?传入值和传入引用参数有什么区别,什么时候要为传入的引用参数加上const?
(1)const int * ptr; int const * ptr; //都是表示该指针指向了一个常量。
int * const ptr; //表示该指针为常指针,其初始化之后不允许再改变其值。
const int * const cicptr ; //指向常数的常指针。
(2)int num=20; const int array_size=10;
int* pnum=# const int * cpum=# //const int *指针可以采int * 指针直接初始化
const int * csize=&array_size; //const型数据只能采用指向const的指针来指向
(3)非const引用只能绑定到该引用的同类型的非const对象,而const引用能够绑定到任意一种对象上(const型,非const型,甚至不同类型)。
double dum=10.1; const int &dd=dum;
在不改变传进来的参数的时候就加上const限定,比如类里面的复制构造函数。引用参数可以节省时间,避免复制。