- 博客(5)
- 收藏
- 关注
原创 设计模式相关问题(一直更新)
1.工厂方法与抽象方法的区别 工厂模式:定义一个用于创建对象的借口,让子类决定实例化哪一个类 抽象工厂模式:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类 工厂方法模式 抽象工厂模式 针对的是一个产品等级结构 针对的是面向多个产品等级结构 一个抽象产品类 多个抽象产品类 可以派生出多个具体产品类 每个抽象产品类可以派生出多个具体产品类 一个抽象工厂类,可以派生出多个具体工厂类 一个抽象工厂类,可以派生出
2021-09-14 19:55:46
89
原创 字节序理解
计算机硬件有两种储存数据的方式:大端字节序(big endian)和小端字节序(little endian)。 (1)小端字节序:低字节在低地址中,高字节在高地址中。这种字节序又称为主机字节序,intel的cpu使用的就是这种字节序。 (2)大端字节序:低字节在高地址中,高字节在低地址中。这种字节序又称为网络字节序,socket传输时就需要使用这种字节序。 如何判断是字节序方式 ...
2021-09-13 16:56:54
77
原创 C++ STL array
推荐使用array<T,N>來替换T ar[N]。 1.array优点 (1)array 模板类中已经封装好了大量实用的方法,在提高开发效率的同时,代码的运行效率也会大幅提高。 (2)array 容器提供的 at() 成员函数,可以有效防止越界操纵数组的情况,该方法会自动检测n在该array中是否是一个有效的值,当n大于或者等于它的size的时候,将会抛出out_of_range异常,这和成员方法operato[]是一个对比,因为operator[]不会检测n的范围。;fi...
2021-09-11 09:56:33
155
原创 c++面试重要考点
第一章 C++基本考点 1.1 命令空间 一个潜在的问题:使用两个已封装好的产品,而它们都含一个名字wanda()函数,当使用wanda()函数时,编译器就不知道指的是哪个版本。命令空间让能够将产品封装叫做名称空间的单元中。这样就可以用命令空间的名称来指出想使用哪个厂商的产品。也就说,命令空间是用来把变量名封装起来。 下面一行代码表明,可以使用std名称空间中定义的名称,而不必使用std::前缀。 using namespace std; 但是在大型项目中...
2021-09-10 09:10:56
1149
原创 链表算法一点思考
1. 双指针 (1)双指针一般分为快慢指针, (2)一个指针先走多少步,另一位一个指针开始走,例如:删除链表的倒数第N个节点 (3)前指针和后指针,一定要分清当前指针和当前指针的前一个指针,反转链表 2. 链表一般可能涉及到求链表长度 求长度,先走,然后同步走,比如:链表相交 ...
2021-09-09 21:27:44
71
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人