2020中兴一面总结

1、git管理

1.1 git融合冲突的原因,怎么解决

答:冲突原因:对应相同的代码有两个不同的commit或者对同一个文件进行改名等等情况就会导致融合冲突,解决办法是避免不同的人修改相同的代码的情况,然后修改之前养成修改之前先使用git pull查看更新情况,再决定如何更改。

1.2 merge和rebase的区别

答:git merge是合并两个分支,并且会保存两个分支的父信息;而git rabase时,它会将子分支的父信息另外临时保存,然后将子分支更新到主分支,看起来好像没有经过合并一样

1.3 reset作用

答:可以用于丢弃所有本地更改,回退到某个历史版本

2、shell脚本,编译、链接

2.1 能否多核编译、多核链接?

答:可以多核编译,如使用make -j7就是使用多核编译,但是链接的时候不能或者链接,因为它需要进行串行操作。

3、C++

3.1 析构函数为什么是虚函数

答:为保证通过父类指针释放资源时子类对象也可以被回收,避免内存泄露;但是默认情况下C++的析构函数不是虚函数,因为使用虚函数意味着每个对象都需要维护一个虚函数表,这会占用一定的空间,对应不存在继承关系的类来说并没有必要将析构函数设置为虚函数,这样可以节省空间。

3.2 类的设计原则

3.3 多继承

一个派生类同时继承多个父类,这样的派生类将具有多个父类的属性

3.4 内联函数和普通函数

答:内联函数在每个调用点内联地展开,可以避免函数调用的开销,内联适用优化规模较小、流程直接、频繁调用的函数,编译器可能会忽略将规模大的函数声明为内联函数的请求

3.5 宏函数和普通函数

宏函数与内联函数类似,但是宏函数没有参数类型和类型检查,要注意括号的存在和匹配问题,因此使用出错率更高。

3.6 设计模式

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值