1 自我介绍:
修过C++、数据结构、数据库、计算机组成原理、汇编
操作系统、计算机网络怎么上的:
我们数学专业没有开这个课、隔壁信息的有这个课,平时偶尔会去旁听
2 语言
项目中实现了哪些模块:
学生成绩的输入、输出、查询、更新(包括增加和删除学生信息)、统计学生人数模块
用过多线程编程吗
没有
C与C++的区别:
面向过程、面向对象,C++是基于C实现面向对象的
C++多态的实现机制:
重载函数、函数模板
虚函数表:
如果一个类里面有纯虚函数,就会建立虚函数表,占8个字节
虚函数表在哪里建立的?栈还是堆:
栈区吧应该,不太了解这个
虚函数表内部结构是什么:
不懂
栈快还是堆快:
栈更快一些,堆的话是由系统管理的一段内存,堆里面有一些复杂的数据结构,操作时涉及到一些堆内存遍历操作使得堆分配内存比较慢一些
堆栈的生长方向:
堆和自由存储区:
堆是由系统管理的一段内存,自由存储区是C++基于new和delete操作符引入的一个比较抽象的概念,它的底层实现还是用堆
C中内存分配与C++中内存分配:
C中用malloc于free函数进行管理,C++中用new和delete运算符进行管理
struct与类的区别:
struct可以有构造函数、析构函数,类有也构造函数、析构函数、
它们的访问权限:
类有三种访问权限:public、protected、private,struct没有
提醒 - > struct没有吗:
struct默认是public、class默认是private
定义一个空类,默认会生成哪些函数:
构造函数、析构函数、拷贝构造函数
提醒 - > 还有吗:
重载赋值运算符函数
泛型编程概念:
是指容器、泛型算法之类的吗
单例设计模式的实现:
类中的构造函数、析构函数声明为静态的
C++智能指针:
4种,auto_ptr,unique_ptr,shareed_ptr,weak_ptr
说一下shareed_ptr:
有一个计数功能,记录指向当前对象有多少个智能指针指向它
shareed_ptr已经这么成熟了,为什么还用weak_ptr:
为了解决shareed_ptr的弱引用的问题
提醒 - > 循环引用:
weak_ptr就是解决shareed_ptr的循环引用的问题
除了C++还了解过那些语言:
之前自学过Python,然后这学期有开Java这门课
C++与Java的区别:
C++语法比较严谨,着重点在一些细节上,Java的话稍微灵活一些
Map的底层实现原理:
Map是一个键值对集合,就是一个键对应一个值,通过键可以查找值,map底层使用红黑树实现的
C++中map与unordered_map:
不太了解
提醒:unordered_map是没排序的,map是排好序的
3 算法
二叉树的遍历方式
有四种,是前序遍历、中序遍历、后序遍历、层序遍历
怎么实现平衡二叉树:
递归,(具体实现?)
不太懂
学过那些数据结构:
学过一些简单的,比如链表、栈、队列、图之类的
4 计算机原理
计算机有哪几个组成部分,比如冯诺依曼体系结构:
5个部分,CPU,运算器,内存,外设,还有一个想不起来了
内存分页:
不会
5 操作系统:
进程与线程的区别:
进程是一个轻量级进程,统一进程下的线程共享该进程的所有资源,线程之间的通信也是由进程通信来实现的
进程通信的实现机制:
不太懂
死锁:
系统中一个进程在等待另一个进程运行结束,另外一个进程又在等待这个进程,出现了两个进程互相等待的现象
死锁的必要条件:
不清楚
锁:
同步锁吗
乐观锁、悲观锁有了解过吗:
没有
CPU怎么实现上下文切换
不会
6 网络
TCP/IP协议、ARP协议??
不太了解,网络这部分最近才开始看,就知道有个7层模型
那你说一下7层模型有啥
数据链路层,就想到这一个
平时网络怎么学的
然后看过TCP/IP书,挺厚的
7 数据库
用过哪些数据库
mysql
mysql的数据组织形式
不太了解
8 其它
平时编程时遇到问题怎么解决的:
在一些论坛上询问,看一些优质回答,然后新建一个文件来试着运行博主的代码,看看能不能正常运行,或者会产生哪些错误
哪些论坛:
CSDN、博客园
平时用什么浏览器查询,google还是别的:
服务器有了解吗:
和舍友共用
你们自己搭建的吗:
不是,自己买的
项目用到哪些C++的知识:
全部评论
(2) 回帖