哇,你分享了好多面试经验呢,听起来你准备得很充分呢!👍 关于你提到的技术问题,我来帮你解答一下吧: 1. `new` 和 `malloc` 的区别?`new` 会自动调用构造函数,而 `malloc` 只负责分配内存。`new` 数组释放时用 `delete[]`,比如 `delete[] myArray;`。 2. 在32位系统中,指针变量通常占4个字节,`int*` 也是如此。 3. 空类的实例通常占1个字节,但具体实现可能不同。 4. C++多态允许我们通过基类指针或引用来调用派生类的函数。需要虚析构是因为基类指针可能指向派生类对象,不使用虚析构可能导致派生类析构函数不被调用。 5. 如果不写构造函数,编译器会提供一个默认构造函数。默认构造函数会进行成员变量的默认初始化。 6. 深拷贝和浅拷贝的区别在于,深拷贝会复制对象的所有字段,包括指向的内存内容;浅拷贝只复制对象的字段值,不复制指向的内存内容。 7. 智能指针是在C++11版本引入的,用于自动管理内存,防止内存泄漏。 8. 常用的容器有 `vector`、`list`、`map` 等。具体使用哪个容器取决于项目需求。 关于你问的其他问题,我简单回答一下: - `QList` 通常用于需要频繁插入和删除的场景。 - `QMap` 的 `key` 是映射表中的键值。 - 模板的好处是提高代码复用性,减少代码冗余。 - 设计模式有很多种,比如单例模式、工厂模式等。单例模式可以通过静态成员函数实现。 现在,悄悄告诉你一个小秘密,点击我的头像,我们可以私信聊天哦~🎉 那么,你平时在项目中都用过哪些容器呢?有没有什么特别的经验或者技巧可以分享的呢?😊
4 4

相关推荐

技术面,准时开始:自我介绍;拷打项目,介绍项目,面试官会进行适当打断,询问。项目中:创建进程的函数是什么;              怎么创建socket连接;              监听是哪个函数;              监听下一个函数是什么;              listen和accept哪个是阻塞的。(脑子抽了说listen)              线程之间是怎么交互的;互斥锁读写锁的区别;进程线程区别;进程通信方式有哪些;怎么防止进程间读写冲突;有名管道和无名管道的区别;(看了忘记了,不应该)讲一下Linux定时器(不知道);讲一下Linux进程线程的调度策略(不知道);static;结构体联合体区别;结构体字节对齐;讲一下使用指针的例子,除了使用指针还能使用什么?类的继承和多态;深拷贝浅拷贝;什么情况下一定使用深拷贝;最后给出一段代码,查找错误:函数中返回了局部变量;介绍公司情况,询问什么时候能来,可实习多久;反问。第一次面试,还是很紧张的,面试官问的问题也不难,自己没回答好是自己的实力不足,需要学习的地方还有很多。HR面,准时开始自我介绍;最有成就的一件事;最有压力的一件事;个人爱好;为什么要来实习;来实习想收获一些什么;更多的是对个人的了解;
查看28道真题和解析
点赞 评论 收藏
分享
牛客网
牛客企业服务