招聘动态详情
奇虎360公司校园招聘研发岗面试题和知识点
校招
2024-06-03 16:04
42

研发岗常见的面试一些相关知识点:


1. **C/C++基础知识**:- 堆和栈的区别:栈由编译器自动管理,用于存储局部变量;堆由程序员手动管理,用于动态内存分配。- `new`与`malloc`的区别:`new`是C++运算符,支持构造函数;`malloc`是C语言函数,不调用构造函数。- `free`和`delete`:释放内存,`free`用于C中的内存,`delete`用于C++的对象,C++中释放动态数组需用`delete[]`。- 空类的`sizeof`通常为1,用于内存对齐。


2. **面向对象**:- 重载:方法名相同但参数列表不同,返回值类型不影响重载。- 虚函数和多态:虚函数实现动态绑定,多态在运行时确定函数调用。- 构造函数可声明为虚函数,析构函数默认为虚函数,以支持基类指针删除派生类对象。


3. **内存管理**:- 如何确定释放多少内存:通过记录分配时的大小,或者使用智能指针自动管理。


4. **操作系统**:- 进程与线程的区别:资源分配、调度和通信机制。- 地址对齐:提高访问效率,避免内存访问异常。


5. **软件测试**:- 测试类型包括功能测试、性能测试、接口测试、并发测试、稳定性测试等。- 测试工程师应具备的素质包括细心、逻辑思维、
问题定位能力等。面试中,面试官可能会要求实际编写代码,讨论实际
问题的解决方案,并评估候选人的技术理解和
问题解决能力。此外,对360产品了解和分析也是面试的一部分,例如产品设计的优缺点以及如何改进。


及时获取最新招聘岗位信息