面试前复习
文章平均质量分 95
believe_s
这个作者很懒,什么都没留下…
展开
-
设计模式之依赖倒置原则
在传统的过程式中,上层依赖于底层,当底层变化,上层也得跟着做出相应的变化。这就是面向过程的思想,弊端就是导致程序的复用性降低并且提高了开发的成本。 而面向对象的开发则很好的解决了这个问题,让用户程序依赖于抽象层,实现层也依赖于抽象层,而抽象层一般不会轻易变化。即使实现变化,只要抽象不变,客户程序就不用变化,这大大降低了客户程序与实现细节的耦合度。就好比实例中电脑由硬盘、CPU、内存组成,而这些硬件原创 2017-11-13 15:57:05 · 609 阅读 · 0 评论 -
C++ 中 new 操作符内幕:new operator、operator new、placement new
一、new 操作符(new operator)人们有时好像喜欢有意使C++语言的术语难以理解。比方说new操作符(new operator)和operator new的差别。当你写这种代码:string *ps = new string("Memory Management");你使用的new是new操作符。这个操作符就象sizeof一样是语言内置的。你不能改变它的含义,它的功能总是一...原创 2018-10-22 17:19:52 · 234 阅读 · 0 评论 -
C语言笔记(关键字)
gdb调试gcc 源程序 -g;加gdb调试信息gdb可执行程序;(gdb调试)l(ist):查看源码,按一下从main开始10行以此往后l n:查看n处上下10行的源码run:运行程序b(reak)行号:加断点i(nfo) b:查看当前断点d(elete) 断点序号:删除断点p(rint) 变量名:查看变量的值c(ontinue):程序继续运行单步运行程序:n(ext):往原创 2017-11-17 21:04:16 · 1218 阅读 · 1 评论 -
C语言笔记(符号)
注释符号几个似非而是的注释问题例子:(A) int / * ... * /i;(B) char * s = "abcdefgh //hijklmn";(C) //Is it a \ valid comment?(D) in/ * ... * /t i;我们知道C语言里可以有两种注释方式:“/* */” 和 “ // ”。那么上面几条注释是否正确。(A)中,有人认为Bain一原创 2017-12-03 12:25:42 · 987 阅读 · 0 评论 -
设计模式之抽象工厂
概念: 抽象工厂模式是所有形态的工厂模式中最为抽象和最其一般性的。抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品的具体类型的情况下,能够创建多个产品族的产品对象。模式中包含的角色及其职责: 抽象工厂(Creator)角色 抽象工厂模式的核心,包含对多个产品结构的声明,任何工厂类都必须实现这个接口。 具体工厂( Concrete Creator)角色原创 2017-11-14 10:56:29 · 635 阅读 · 0 评论 -
设计模式之单例模式
作用:保证为一个类只生成唯一的实例对象。也就是说,在整个程序空间中,该类只存在一个实例对象 构造图如下: 为什么需要单例模式: 1、在多个线程之间,比如初始化一次socket资源 2、在整个程序空间使用全局变量,共享资源 3、大规模系统中,为了性能的考虑,需要节省对象的创建时间 实现步骤: 1、构造函数私有化 2、提供一个全局的静态方法(全局访问点) 3、在类原创 2017-11-13 22:27:18 · 527 阅读 · 0 评论 -
设计模式之工厂模式
一、简单工厂模式静态工厂方法模式。通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。 模式中包含的角色及其职责: 1.工厂(Creator)角色 简单工厂模式的核心,它负责实现创建所有实例的内部逻辑。工厂类可以被外界直接调用,创建所需的产品对象。 2.抽象(Product)角色 简单工厂模式所创建的所有对象的父类,它负责描述所有实例所共有的公共原创 2017-11-14 09:39:50 · 518 阅读 · 0 评论 -
设计模式之开放封闭原则
以下皆是个人理解如有不对请留言指出,谢谢! 我就代码提出我自己个人的看法: 正常定义一个对象开放封闭原则实例:#include using namespace std;class BankWorker{public: void payM() { cout "付款" << endl; } void saveM() {原创 2017-11-13 15:50:55 · 585 阅读 · 0 评论 -
设计模式之创建者模式
设计模式的基本原则设计模式体现的是软件设计的思想,而不是软件技术,它重在使用多态与抽象类来解决各种问题开放封闭原则:类的改动是通过增加代码进行的,而不是修改源代码依赖倒置原则:依赖于抽象(接口),不要依赖具体的实现(类),也就是针对接口编程接口隔离原则:不应该强迫客户的程序依赖他们不需要的接口方法。一个接口应该只提供一种对外功能里氏替换原则:任何抽象类出现的地方都可以用他的实现类进行替换。实原创 2017-11-12 23:18:55 · 580 阅读 · 0 评论 -
笔试面试收获(持续更新中)
1. Internet 是有ARPANET发展而来 2. NFS(Network File System)即网络文件系统 3. OSI参考模型七层:物理层,数据链路层,网络层(IP,路由器,三层交换机),传输层(TCP/UDP),会话层,表示层,应用层 4. 软件测试:黑盒/白盒测试: 黑盒测试:主要就是测试代码的功能与输入有效性在问题, 以便于了解或使用系统的内部结构及知识原创 2017-11-08 11:08:00 · 545 阅读 · 0 评论 -
leetcode练习——栈(1)
题号20:Invalid ParenthesesGiven a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.An input string is valid if:Open brackets must be cl...原创 2019-01-02 15:18:45 · 294 阅读 · 0 评论