【面经】高德地图 C++ 研发 二面

这篇博客分享了高德地图C++研发二面的面试题,包括const的作用及其区别、struct与class的选择、字节对齐、C++内存管理、反转二叉树的递归与非递归实现、冒泡排序和快速排序的时间复杂度、A*算法以及类型萃取等知识点。
摘要由CSDN通过智能技术生成

点击上方蓝字关注我,我们一起学编程
如果觉得内容还不错,请帮忙分享一下
有任何疑问或者想看的内容,欢迎私信

微信搜索《编程笔记本》(codingbook2020),获取更多干活。

今天接着分享高德地图的面试题,岗位是C++研发二面面试题。

面试题目录

2.1 const 的作用,函数前面和函数后面的 const 有什么区别?

const 主要有以下几个方面的作用:

  • 可以定义const常量,具有不可变性
    例如:const int Max=100;Max++会产生错误。
  • 便于进行类型检查,使编译器对处理内容有更多了解,消除了一些隐患。
    例如:void f(const int i) { ... }编译器就会知道 i 是一个常量,不允许修改。
  • 可以避免意义模糊的数字出现,同样可以很方便地进行参数的调整和修改。 同宏定义一样,可以做到不变则已,一变都变
  • 可以保护被修饰的东西,防止意外的修改,增强程序的健壮性
  • 可以节省空间,避免不必要的内存分配
    例如:
    #define PI 3.14159          // 常量宏
    const double Pi=3.14159;    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值