没有合适的资源?快使用搜索试试~ 我知道了~
C++相关学习总结和整理
需积分: 5 0 下载量 64 浏览量
2022-09-13
07:01:05
上传
评论
收藏 2.14MB DOCX 举报
温馨提示
试读
20页
C++相关学习总结和整理
资源推荐
资源详情
资源评论
C++中类和结构体的区别:
1、 C++中的类默认的成员是私有的,struct 默认是共有的
2、 C++中的类可以定义成员函数,struct 只能定义成员变量
指针和数组的区别:
1、 数组对应一块内存,指针指向一块内存
2、 数组的地址和空间大小在生命周期不会发生变化(内容可能发生变化);指针指向的内
存大小可以随时变化,指针指向常量字符串时,它的内容不可以改变
3、 用 sizeof 可以计算数组的元素个数,无法计算指针所指向内存的大小
4、 数组名是常量指针,指针是变量指针
指针函数和函数指针
1、 指针函数:int *f(int a, int b) 表示函数的返回值是一个指针类型
2、 函数指针:int (*f)(int a, int b)表示一个指针,这个指针指向函数
理解 list 和 vector 的区别
1、 vector 拥有一段连续的内存空间,支持随机存取,插入和删除效率低
2、 list 拥有一段不连续的内存空间,不支持随机存取,支持插入和删除
派生类和基类中有同名的函数,基类指针指向子类对象时,调用的函数是谁的?
1、 当基类指针指向子类对象时,通过这个指针调用子类和基类同名成员函数时,基类声明
为虚函数就会调用子类的这个函数,不声明则会调用基类
虚函数和纯虚函数的区别:
纯虚函数后面必须要跟 0
虚函数必须实现,纯虚函数一定没有实现(抽象类)
虚函数在子类里面可以不重载,但是纯虚函数必须重载
纯虚函数必须在子类进行实现
纯虚函数的目的在于使派生类仅仅只是继承函数的接口
1、 父类指针指向子类对象时,如果父类析构函数加 virtual,执行 delete 时,会先调用子类
的析构函数再调用父类的析构函数。如果不加,则只会调用父类的析构函数
如果 Base 是个父类,类中有函数声明为纯虚函数,则 Base b 报错,Base *b 不错报,主要
为包函纯虚函数的类为抽象类,不能实例化
析构函数设置为虚函数的作用:
主要用于父类指针指向子类对象时,用于释放子类资源
如果不设置为虚函数,delete 时则只会调用父类的析构函数。
https://blog.csdn.net/u011416077/article/details/52260663
构造函数不能声明为虚函数,构造函数用于初始化对象及其他相关操作,在执行时前对象尚
未创建完成,虚函数表不存在。
静态函数和虚函数的区别:
静态函数在编译时就已经确定了运行时机,虚函数在运行时才进行动态绑定,虚函数使用虚
函数表机制,调用的时候会增加一次内存开销
虚表是一个指针数组,元素是虚函数的指针。每个元素对应一个虚函数的函数指针。
STL 是什么,STL 容器有几种
1、 STL 是一个标准模板库,是 C++标注库的重要组成部分,不仅是一个可复用的组件库,
而且是一个包罗数据算法的软件框架。主要有三类容器:顺序容器、关联式容器、容器
适配器
2、 顺序容器主要有:vector、deque 和 list(set 和 map 区别:map 为键值对,set 是值的
结合。Map 可以使用 get 方法,set 不能使用。Set 可以用于数组去重)
3、 关联式容器:set、multiset、map、multimap set 中不允许有相同元素、multiset 中允
许有相同元素 map 与 set 不同之处为 map 中存放的元素有且仅有两个成员变量,一
个名为 first,一个名为 second,map 根据 first 的值对元素从小到大进行排序,并可以
快速的根据 first 来检索元素。
unordered_set 和 set 区别一个为有序,一个为无序,而且都可以实现去重
Map 和 multimap 的不同在于是否允许相同 first 值元素。
map 的底层实现为红黑树,在插入的时候会按照 key 值来排序。
multimap 相对于 map 来说可以插入重复的 key 值,并且分别存储。对于 map 如果插入
同样的 key,则它的插入方式为 map[key]=value;如果存在 key 则更新 value,不存在 key
则插入 key-value 键值对
unordered_map 底层实现为 hash,具有更高的查询效率,unordered_multimap 和
unordered_map 的区别为一个可以插入相同的 key 值,一个不允许。
剩余19页未读,继续阅读
资源评论
Dream-boy
- 粉丝: 1
- 资源: 11
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功