摘要: 为了理解C++需要记住其主要的次语言,分别为C,Object-Orinted C++(面向对象的C++)、TemplateC++、STL。 · C语言:是C++的基础。C++的块,语句,预处理器,内置数据类型(C++的基本数据类型),数组,指针等等都来自C语言。有些时候也可以认为C++是C语言的某些 阅读全文
posted @ 2017-05-04 01:29 弗莱曼飞侠 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 宁可使用编译器而不用预处理器 假设我们使用预处理器: 这标识符ABC也许编译器没看到,也许它在编译器处理源码前就被预处理器移走了,于是“标识符”ABC没有进入标识符列表(symbol table)中。但是当我们编译程序遇到个错误信息时,可能会带来困惑,因为这个错误信息可能会提到1.56而不是ABC, 阅读全文
posted @ 2017-05-04 01:22 弗莱曼飞侠 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 1,假设有n个台阶的楼梯,一个人要上这个楼梯,他每次可以走1个台阶或者2个台阶,问走上这个楼梯的走法总共有多少种? 解答:这个题目可以从最简单的办法逐步掌握其规律,比如走上1个台阶总共只有1种走法,而走上2个台阶有两种走法(一种直接走2步,一种走2个一步),我们知道要走上第i个台阶,要么是从第i-1 阅读全文
posted @ 2017-05-03 21:14 弗莱曼飞侠 阅读(782) 评论(0) 推荐(0) 编辑
摘要: 前面的Top-N问题使用了reownum,但是又遇到个分页问题,将表emp的4行为1页输出,前4行很好做: 但是4--8行怎么输出呢? 但是这样显然没结果; 如果就是想要用 rownum > 4 这种条件的话话就要用嵌套语句,把 rownum 先生成,然后对他进行查询。 我在查找资料时,发现是对子查 阅读全文
posted @ 2017-05-01 23:47 弗莱曼飞侠 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 学习了SQL子查询,遇到个Top-N问题,即:加入有张工资表(这里使用Oracle SCOTT用户的emp表),需要查找工资最高的3个员工信息,以下列格式输出: 乍眼一看,这很简单啊,对sal进行排序就可以了啊。 但是,前面的行号呢?题目只要求输出前三行啊。。。 那这样可不可以呢? 结果: 行号不对 阅读全文
posted @ 2017-05-01 23:21 弗莱曼飞侠 阅读(172) 评论(0) 推荐(0) 编辑
摘要: Facade外观模式,也是比较常用的一种模式,基本上所有软件系统中都会用到。 GOF 在《设计模式》一书中给出如下定义:为子系统中的一组接口提供一个一致的界面, Facade 模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。简单说,就是将复杂的逻辑封装起来,对外公开简单的接口,由客户程序 阅读全文
posted @ 2017-04-28 22:37 弗莱曼飞侠 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 代理,说白了就是中介。假设有俩对象A和B,A想访问B,但是根据迪米特法则,我们不能喝陌生人说话,简而言之就是A要减少知道B的相关情况,要降低A与B的耦合度。这时我们使用中介C,而C拥有B的相关情况,A通过C来访问B。 下面我们使用一个案例来说明代理模式: 类图: 运行结果: 阅读全文
posted @ 2017-04-28 21:35 弗莱曼飞侠 阅读(398) 评论(0) 推荐(0) 编辑
摘要: C++中,使用预处理宏存在俩问题: (1).宏看起来像一个函数调用,但不总是这样,这样就隐藏了难以发现的问题(这个问题在C中也存在) (2).这个问题是C++特有的:预处理器不允许访问类的成员数据。这意味着预处理器宏不能用作类的成员函数。 为了保持预处理器宏的效率又增加安全性,而且还能像一般成员函数 阅读全文
posted @ 2017-04-28 20:33 弗莱曼飞侠 阅读(178) 评论(0) 推荐(0) 编辑
摘要: tatic关键字有俩作用:(1).控制存储分配;(2).控制一个名字的可见性和连接。 随着C++名字空间的引入,我们有了更好的,更灵活的方法来控制一个大项目的名字增长。 在类的内部使用static是在全程序中控制名字的另一种方法。这些名字不会与全局名冲突,并且可见性和访问也限制在程序内部,使得在维护 阅读全文
posted @ 2017-04-28 19:41 弗莱曼飞侠 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 如果想要一个函数来获取程序的优先权(int priority()),另一个函数用来处理在某些动态分配所得到的资源进行优先权的处理(void processWidget(std::trl::shared_ptr<Widget> pw, int priority)) 由于资源获取就是初始化,根据第13条 阅读全文
posted @ 2017-04-28 19:39 弗莱曼飞侠 阅读(153) 评论(0) 推荐(0) 编辑