记一次面试

记一次面试稳固一下知识点:
1.类中变量初始化的顺序,列表初始化和构造函数内初始化有什么区别?
答:
1.先按照初始化列表中的变量,在执行构造函数中的初始化,和声明先后没有关系,但是C++准则中:以同样的顺序定义和初始化成员变量,防止使用未初始化的变量。
2.列表初始化是执行的拷贝构造函数,而默认的构造函数内初始化是执行的赋值构造函数,这样就降低了一些性能。当然这是针对非内置类型来说的。
延申:理解构造函数 拷贝构造函数 赋值函数
拷贝构造函数的执行时机: 当函数的参数为类的对象时、当函数的返回值是类的对象时,对象需要通过另外一个对象进行初始化(默认浅拷贝,不小心会发生重复释放内存的问题)。
赋值函数的执行时机:当两个对象都存在的时候并且执行=操作符。(不小心会发生内存泄漏哦)
一个类必存在的函数:构造函数、析构函数、赋值函数
注意:如果定义了其他构造函数,编译器就不会生成默认构造函数
2.网关和子网掩码的作用
网关地址就是路由器的地址,是负责数据的发送,往哪儿发。
子网掩码是用来判断任意两台计算机的IP地址是否属于同一子网络的根据。
延申:公网IP和内外IP的区别:
交换机和路由器的区别:交换机可以做的,路由器都可以;交换机在链路层,路由器在网络层(负责IP的分配);路由器可以提供防火墙的作用
3.线程同步的方式、进程间通信的方式
信号量、事件、临界区、互斥量(允许进程间使用)
socket 管道 共享内存 信号量 FIFO(命名管道)
4.vector list map的区别
主要是vector内存管理方式,申请的内存比需要的大一些。和编译器有关系1.5-2倍,所以尾部插入很快。超过一定范围,重新开辟内存。特定:可变大小数组的序列容器。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值