【面试题】BD

一面:

自我介绍,简单介绍项目;

/***********发现项目没什么可问的,然后开始各种基础知识o(╯□╰)o************/

内存结构,低地址,高地址;

 

STL底层实现,set是否有序;

 

多态在什么情况下触发----(基类调用虚函数);

 

C++类型转换(4种);

 

链表的转置;

 

二叉树的按层输出,输出某指定层;

 

Malloc与new区别;

特征

new/delete

malloc/free

分配内存的位置

自由存储区

内存分配成功的返回值

完整类型指针

void*

内存分配失败的返回值

默认抛出异常

返回NULL

分配内存的大小

由编译器根据类型计算得出

必须显式指定字节数

处理数组

有处理数组的new版本new[]

需要用户计算数组的大小后进行内存分配

已分配内存的扩充

无法直观地处理

使用realloc简单完成

是否相互调用

可以,看具体的operator new/delete实现

不可调用new

分配内存时内存不足

客户能够指定处理函数或重新制定分配器

无法通过用户代码进行处理

函数重载

允许

不允许

构造函数与析构函数

调用

不调用

 

Struct与class的区别;

 

 

进程间的通信有哪几种;

管道(Pipe)及有名管道(named pipe)

信号(Signal)

消息队列

共享内存

信号量(semaphore)

套接口(Socket)

 

sockect服务器,客户端到服务器的过程;

 

排序有哪些,堆排序怎么实现,快排怎么实现,哪些排序稳定;

 

空结构体的大小;

 

除项目之外,自己动手写的一些东西,自己在学习的东西;

 

二面:

简单的自我介绍;

 

10的n次方个数属于(1,10);只遍历一次,确定逆序对的个数;---基数排序

 

五子棋的状态(五子棋游戏);

 

posted @ 2016-04-26 16:01  QoQzz  阅读(264)  评论(1编辑  收藏  举报