摘要:
C++允许多重继承,多重继承是C++与其他一些流行语言不同的一个地方。比如在JAVA中就不存在多重继承,为此,当涉及到类似C++多重继承的场景时,JAVA之类的语言都使用“接口”的形式来实现目的,在C++里是没有接口的概念的,对应需求的使用对虚基类的多重继承来实现。下面就整理一下多重继承的基本用法和 阅读全文
摘要:
简单工厂模式、工厂模式以及抽象工厂模式都是非常常用的设计模式,这段时间在读《大话设计模式》,对于这几个的模式有了自己的认识,下面就通过几个例子,一步一步整理这3个模式的具体好处和应用场景。 首先模拟一个场景,假设有一个采购员,需要给公司采购键盘,购买键盘时,连接线长度需要自己指定: 则购买键盘的代码 阅读全文
摘要:
上一篇整理了cat指令的几个基本常见用法,这次整理一下paste指令的基本用法。 paste paste可以简单的理解为把两个文件的内容按列合并,与cat命令直接将不同文件按照先后顺序接起来不同,paste可以非常快速的将两个文件中的内容按照文件顺序从左往右排起来,例如文件1的内容是: a b c 阅读全文
摘要:
近几个月刚从windows上转过来,开始慢慢熟悉linux,先不撕比到底哪个更好,首先要怀着相互借鉴的精神去了解各个平台。 Linux上做开发,除去使用文本编辑器做开发的大神之外,大家(包括我这种菜鸟新手)都需要掌握的应该就是Linux上的常用命令,能让一些时不时冒出来的琐碎而又麻烦的需求简单化。这 阅读全文
摘要:
类可以继承class或struct: 继承class时,默认继承方式是private 继承struct时,默认继承方式是public 继承方式(private成员是无法被继承的): public继承:继承了父类的public和protected成员,并保留的可见性 protected继承:继承了父类 阅读全文
摘要:
三种思路: 最基本的: 排序,然后遍历 打擂法:该方法适用于某个数出现的次数超过半数的情况 从第一个数开始,上擂台 后一个数如果与擂台上的一致,则守擂计数+1 后一个数如果与擂台上的不一致,则守擂计数-1 一旦守擂计数减为0,就将台上的数挤掉,然后刚刚打擂的数上台 类似上一种: 任意两个不同的数相互 阅读全文
摘要:
以下是我个人对测试驱动开发的一点理解,如有不足请指正 测试驱动开发的大致步骤是 写一个测试(基本上无法运行甚至编译) 小改动使之能够编译运行(建立需要调用的函数存根,不实现,或伪实现——直接返回定值) 逐渐使代码一般化(用变量代替常量定值) 通过改动,消除重复设计(提取为公用的变量或函数) 具体每一 阅读全文
摘要:
C++中自带有一个复制构造函数,即: MyClass test1; MyClass test2 ( test1 ); 此时,test2对象会复制test1来进行初始化,该自带的构造函数为MyClass ( MyClass & ) // 注意参数的引用是必须的 C++中复制对象有几种方法: MyCla 阅读全文
摘要:
需要注意两点: 不变类不是一种固有的数据结构,而是一种设计类的方式 所以,不变类在JAVA等其他支持类的语言中也可以有 编写不变类的详细规则: 类的所有属性均为private 只提供属性的getter,不提供setter 所有属性值在构造函数中指定 getter返回属性时,注意不要返回引用或者指针 阅读全文
摘要:
之前都是写在云笔记里自己看,今天开始慢慢搬上来 阅读全文