【CVTE】C++开发 (提前批一面)
文章目录
- 公司背景
- 1. 有没有用过网络排查工具,用过哪些?
- 1. Wireshark C++
- 2. Tcpdump
- 以下是一些 tcpdump 的常用命令和选项:
- 3. Netstat
- 2. 如果客户端和服务器无法建立连接,怎么排查?
- 3. 描述一下:浏览器输入网址的整个请求流程
- 4. GRPC是什么 ,有什么作用?(重要)
- gRPC的作用
- gRPC的工作原理
- 1. 定义服务接口:
- 5. 什么是TCP粘包?
- 6. 说说进程的内存空间
- 7. 如何实现多线程按顺序打印数据?
- 8. 如何实现死锁?
- 9. 什么是 大端存储和小端存储?
- 10. 怎么防止加的锁忘记释放掉?
- 11. 什么是虚函数,有什么用?
- 12. static的作用
- 13. 空类默认有哪些函数?
- 14. 在什么时候需要使用常引用?(重点)
- 15. 说说sharedptr的原理和使用
- 16. 说说vector原理
- 17. 说一下内存泄漏和堆栈溢出
公司背景
广州视源电子科技股份有限公司(以下简称视源股份)成立于2005年12月,注册资本为70123.9045万元,旗下拥有多家业务子公司。截至2023年12月31日,公司总人数超6700人,约53%为技术人员,员工平均年龄约为30岁。
目前公司的主营业务为液晶显示主控板卡和交互智能平板等显控产品的设计、研发与销售,产品已广泛应用于家电领域、 教育信息化领域、企业服务领域等,始终致力于通过产品创新、研发设计提升产品的用户体验,为客户和用户持续创造价值。公司自成立以来,依托在音视频技术、信号处理、电源管理、人机交互、应用开发、系统集成等电子产品领域的软硬件技术积累,面向多应用场景进行技术创新和产品开发,通过产品和资源整合等能力在细分市场逐步取得领先地位,并建立了教育数字化工具及服务提供商希沃(seewo)、智慧协同平台 MAXHUB 等多个业内知名品牌。
1. 有没有用过网络排查工具,用过哪些?
在C++开发中,使用网络排查工具是非常重要的,它可以帮助我们诊断网络问题、分析流量、检查通信协议等。
以下是一些常用的网络排查工具及其简要介绍:
主机探测 、端口扫描、协议交互的跟踪、网络访问、安全诊断
1. Wireshark C++
2. Tcpdump
关于Tcpdump具体使用,可以看我之前的博客网络流量分析——基础知识(二)(Tcpdump 基础知识)
网络流量分析——Tcpdump 数据包过滤
以下是一些 tcpdump 的常用命令和选项:
3. Netstat
2. 如果客户端和服务器无法建立连接,怎么排查?
3. 描述一下:浏览器输入网址的整个请求流程
4. GRPC是什么 ,有什么作用?(重要)
gRPC(Google Remote Procedure Call)是一种高性能、通用的开源远程过程调用(RPC)框架。它由Google开发,并支持多种编程语言,包括C++、Java、Python、Go、C#等 语言无关。gRPC采用HTTP/2作为其传输协议,使用Protocol Buffers(protobuf)作为接口描述语言和数据序列化格式。
gRPC的作用
gRPC的主要作用是在不同进程或服务器之间进行函数调用。这种通信方式能够让开发者像调用本地函数一样调用远程服务的方法,大大简化了分布式系统中服务间的通信复杂度。
以下是gRPC的一些重要作用和特性:
gRPC的工作原理
gRPC的工作流程主要分为以下几个步骤:
1. 定义服务接口:
使用Protocol Buffers(protobuf)定义服务和消息格式,描述客户端可以调用的远程方法。定义文件通常是.proto格式。
5. 什么是TCP粘包?
6. 说说进程的内存空间
7. 如何实现多线程按顺序打印数据?
8. 如何实现死锁?
9. 什么是 大端存储和小端存储?
10. 怎么防止加的锁忘记释放掉?
11. 什么是虚函数,有什么用?
12. static的作用
13. 空类默认有哪些函数?
14. 在什么时候需要使用常引用?(重点)
15. 说说sharedptr的原理和使用
16. 说说vector原理
17. 说一下内存泄漏和堆栈溢出
内存泄漏(Memory Leak)和堆栈溢出(Stack Overflow)是两种常见的程序错误,它们都与程序的内存管理有关,但发生的原因和后果不同。下面我们将分别解释这两者。
之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!