前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >腾讯大连电话面试题目

腾讯大连电话面试题目

作者头像
kalifa_lau
发布2018-08-28 15:54:44
6460
发布2018-08-28 15:54:44
举报
文章被收录于专栏:kalifaの日々

1.项目相关的细节问题。 2.讲讲STL里你常用的数据结构 2.1那么map的时间复杂度是多少 2.2map的底层实现是什么 3.讲解MVC每一层分别是什么 4.从一个长的字符串里查找子字符串用到的算法 这一题我知道是用那个O(m+n)的经典算法,但是名字我想不起来了,不过面试官说名字想不起来没关系。。。KMP!!!! 5.为什么在用迭代遍历vector的过程中不宜修改vector里面元素的值?从工程的角度考虑。 6.从工程的角度来说,有什么功能是new能做到而malloc做不到的。换句话说,是什么理由促使C++的发明者用new来替代malloc。

网上的答案,引用自https://blog.csdn.net/qq_26816591/article/details/52214313 有了malloc/free为什么还要new/delete? 1)它们都可用于申请动态内存和释放内存。 2)malloc是库函数只能作用于内部数据类型,对于非内部数据动态对象而言,就不能完成对象的初始化与销毁,即执行构造函数与析构函数,而new 与 delete此类运算符就能够在编译器的控制权限内完成,对象的初始化与销毁任务,即执行构造函数与析构函数。 为什么C++不把malloc/free淘汰出局呢 既然new/delete的功能完全覆盖了malloc/free,为什么C++不把malloc/free淘汰出局呢?这是因为C++程序经常要调用C函数,而C程序只能用malloc/free管理动态内存。 我们不要企图用malloc/free来完成动态对象的内存管理,应该用new/delete。由于内部数据类型的“对象”没有构造与析构的过程,对它们而言malloc/free和new/delete是等价的。 注意:如果用free释放“new创建的动态对象”,那么该对象因无法执行析构函数而可能导致程序出错。 如果用delete释放“malloc申请的动态内存”,结果也会导致程序出错,但是该程序的可读性很差。所以new/delete必须配对使用,malloc/free也一样。

7.你平时使用什么编译器。我说gnu,人家说没有人直接用gnu,提示我,“你编译的时候在命令行里敲什么代码?”。好吧,我说gcc。面试官说你是不是没编译过大型的工程。 8.那你平时使用什么IDE。visual stdio和pycharm。 9.你还有什么问题要问我们的吗?暂时没有。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.08.23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档