经验:private 继承意味 is-implemented-in-terms of。它通常比 composition 的级别低。
但是当 derived class 需要访问 protected base class 的成员,或需要重新定义继承而来的 virtual 函数时,这么设计是合理的
经验:和 composition 不同, private 继承可以造成 empty base 最优化。这对致力于“对象尺寸最小化”的程序库开发者而言,可能很重要
示例1:虽是 Empty class,但却不仅要花...
分类:
编程语言 时间:
2014-07-15 22:41:05
阅读次数:
284
1、使用chkconfig--list来查看安装的服务,比如我这里最小化安装后的一些服务[root@squid103~]#chkconfig--listauditd0:off1:off2:on3:on4:on5:on6:offcrond0:off1:off2:on3:on4:on5:on6:offip6tables0:off1:off2:on3:on4:on5:on6:offiptables0:off1:off2:on3:on4:on5:on6:offl..
分类:
其他好文 时间:
2014-07-15 11:37:54
阅读次数:
344
什么不说了,先上程序截图:
运行结果是有一棵有星星在闪烁的圣诞树,还会循环播放背景音乐。
之前也是在网上看到类似的一个程序,然后自己最近也在学MFC,所以就模仿着写了一个,
其中使用的是GDI+来显示.png透明背景的图片,图片是在网上找的一张,然后又用PS把其中发光的星星给去掉了,做了一张不带发光星星的
.png图片,然后在程序中使用一个定时器来定时刷新窗口背景,使用这两张图...
分类:
其他好文 时间:
2014-07-15 10:30:43
阅读次数:
254
当我选择centos最小化安装时,发现好多命令都用不了,比如scp,ssh等发现setup也不行现在开始安装setup最小化装完centos6.4系统后,发现用setup的配置命令没有了.这时就要手动去安装这个快速配置程序了.#yuminstallsetuptoolssh命令安装yuminstallopen***-clientshttp://bbs.myh..
分类:
其他好文 时间:
2014-07-14 11:45:31
阅读次数:
198
基本简介编辑OSGI服务平台提供在多种网络设备上无需重启的动态改变构造的功能。为了最小化耦合度和促使这些耦合度可管理,OSGi技术提供一种面向服务的架构,它能使这些组件动态地发现对方。OSGi联OSGI盟已经开发了为例如象HTTP服务器、配置、日志、安全、用户管理、XML等很多公共功能标准组件接口。...
分类:
编程语言 时间:
2014-07-14 10:13:22
阅读次数:
335
经验:支持”编译依存性最小化“的一般构想是:相依于声明式,不要相依于定义式。
基于此构想的两个手段是 Handle classes 和 Interface classes.
示例:相依于定义式
#include
#include "date.h"
#include "address.h"
class Person{
public:
Person(const std::string &name, const Data &birthday, const Address &addr);
st...
分类:
编程语言 时间:
2014-07-12 19:39:46
阅读次数:
347
(十七)责任链模式
责任链模式的目的是通过给予多个对象处理请求的机会,已解除请求发送者与接受者之间的耦合关系。面对对象的开发力求对象之前保持松散耦合,确保对象各自的责任最小化,这样的设计可以使得系统更加容易修改,同时降低产生缺陷的风险。
(十八)命令模式 command
命令模式将请求封装在一个对象中,可以像管理对象一样去管理方法,传递并在合适的时机调用。
命令模式允许在服务执行的上下文使用客户端代码,所...
分类:
编程语言 时间:
2014-07-12 18:44:39
阅读次数:
225
Graphics 绘图类: 提供两个方法。Paint (绘图,被系统自动调用) repaint(重绘)Paint 调用原理(1.窗口最大化,再最小化窗口的大小发生变化Repaint函数被调用)package com.sunzhiyan;import java.awt.*;import javax.s...
分类:
编程语言 时间:
2014-07-11 18:49:34
阅读次数:
186
近期在做公司后台管理系统,当有任务到来时,须要通知当事人,可是 当事人有可能在做别的,浏览器有可能会被最小化,这样就非常难看到通知了。经过查找发现有些浏览器能够使用noitfications。能够在桌面的通知区域内显示一个提示框,而且显示在桌面的最前面,非常方便就能看到了。我就将它简单的封装一下,使...
分类:
其他好文 时间:
2014-07-11 10:15:30
阅读次数:
223
1.将大多数 inlining 限制在小型、被频繁调用的函数身上。这可使日后的调试过程和二进制升级更容易,
也可使潜在的代码膨胀问题最小化,使程序的速度提升机会最大化。
2.inline是对编译器的一个申请。
隐喻方式:将函数定义于 class 定义式内, 如成员函数或 friend 函数
明确声明:在定义式前加关键字 inline
编译器会拒绝大过复杂的函数 inlining, 而所有对 virtual 函数的调用也都会使 inlining 落空。
因为 virtual 意味 ”等待,直到运行期才确定...
分类:
编程语言 时间:
2014-07-10 20:49:39
阅读次数:
205