自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 设计模式 - 六大原则

1.单一职责原则(SRP) 定义:一个类或者一个方法只负责一项职能,或者说引起类只有一个行为原因会引起类的变化。 问题引出:T类负责两个不同的职责:P1、P2。当P1需求变化而发生改变时,可能会造成P2的功能发生故障。 解决方案:引起类变化的原因发生时,若只影响到其中一个职责时,那么该类是需要拆分的。若同时影响到两个职责则不需要进行拆分。 作用: 降低类复杂度; 提高类的可读性以及系统的可维护性; 可扩展性提高同时降低了变更引起的风险性。 代码示例: /* redis_connect()、

2020-12-25 17:53:28 192

原创 Effective C++ 条款02:尽量以const、enum、inline取代#define

1.const: #define P 5.2 记号名称P也行从来没被编译器看见;也许在编译器开始处理源码之前它就被预处理器移走了。于是记号名称P有可能没有进入记号表(symbol table)中。当你使用该常量但是编译出现错误时,有可能错误信息会提示5.2而非P(在编译之前,会进行预处理。P在预处理时期会被全部替换为5.2),这样有可能会令问题难以追踪。原因就是名称P可能从未进入记号表中。 const double P = 5.2; 作为一个语言常量,P肯定会被编译器看到,会进入记号表中。若使用

2020-12-24 10:34:58 153

原创 Effective C++ 条款01:视C++为一个语言联邦

C++已经是一个多重泛型编程语言,同时支持过程形式、面向对象形式、函数形式、泛型形式和元编程形式的语言。 将C++视为一个由语言组成的联邦而非单一语言。在其某个次语言中,各种守则和通例都倾向简单、直观易懂并且容易记住。然而当你从一个次语言移到另一个次语言时,守则可能改变。 4个次语言: · C :C++是以C为基础。区块、语句、预处理器、内置数据类型、数组和指针等都来自C。 · Object-Oriented C++ :classes。封装、继承、多态和virtual等,这一部分是面向对象设计.

2020-12-22 21:43:51 999

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除