240 发简信
IP属地:福建
  • 面向对象六大原则

    在c++程序中,如何设计一个类才能更好的体现面向对象的特性呢?可以参考下面的六大原则:1.单一职责:一个类只有一个职责2.里氏替换原则:继承必须确保基类的特性在派生类中仍然成...

  • 适配器模式

    适配器模式是将一个类的接口转换成我们想要的接口,如类A和类B分别有接口virtual void getinfoA(), virtual void getinfoB(), 如果...

  • 装饰器模式

    装饰器模式是给对象动态的增加某些特性,比如咖啡店买咖啡,可以加坚果,加奶,加糖。设计一个咖啡类,如果每次新增一个选项都要修改这个类,就会破坏类的开放-封闭原则(对扩展开放,对...

  • 策略模式

    策略模式是将一些操作封装起来,使得他们不受具体使用他们的对象的影响,简单的理解起来可以是封装了一些算法,类似于stl里面的查找等算法;这些算法功能一样,对外接口一样以下是个简...

  • 中介者模式

    中介者模式是用一个中介类来封装一系列的对象交互,对象间无需相互引用,降低了耦合性。中介类可以根据需要改变他们之间的交互。中介者模式可以使用租房案例来描述,房东不需要单独找房客...

  • sqlite

    c++客户端项目中需要使用db来保存本地的一些用户信息,sqlite是个轻量级的db,速度也ok,于是选择sqlite来存储本地信息首先在官网http://www.sqlit...

  • inline

    inline:内联函数,内联函数会在调用的地方直接展开,不会发生频繁调用函数对栈内存重复开辟带来的消耗那么是否被inline修饰的都是内联函数呢?答案是否定的。一般inlin...

  • hash_map

    之前用的比较多的是map,map的底层实现是红黑二叉树,map是key_value对,如果想将自定义的类型放到map中,需要在自定义类型中重载<操作符,这是因为map排序的需...

  • std::bind

    std::bind的基本用法是,绑定一个函数对象,和一堆参数,生成一个新的可调用函数,调用该函数时,会调用绑定的函数对象,且把参数传递进去:auto function = s...