自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

转载 Qt核心剖析: moc

前面我们说过,Qt 不是使用的“标准的” C++ 语言,而是对其进行了一定程度的“扩展”。这里我们从Qt新增加的关键字就可以看出来:signals、slots 或者 emit。所以有人会觉得 Qt 的程序编译速度慢,这主要是因为在 Qt 将源代码交给标准 C++ 编译器,如 gcc 之前,需要事先将这些扩展的语法去除掉。完成这一操作的就是 moc。moc 全称是 Meta-Object Com

2016-12-23 14:54:56 452

转载 Ubuntu 安装OpenGL

OpenGL 是一套由SGI公司发展出来的绘图函式库,它是一组 C 语言的函式,用于 2D 与 3D 图形应用程式的开发上。OpenGL 让程式开发人员不需要考虑到各种显示卡底层运作是否相同的问题,硬体由 OpenGL 核心去沟通,因此只要显示卡支援 OpenGL,那么程式就不需要重新再移植,而程式开发人员也不需要重新学习一组函式库来移植程式。安装首先不可或缺的就是编译器与基本

2016-12-23 10:17:53 816

原创 使用数组和链表实现栈

栈数据结构中常用的模型,以下分别使用数组和链表实现堆栈。import java.util.Iterator;/** * Created by wang on 16-12-18. */public class ResizingArrayStack implements Iterable { private Item[] a = (Item[]) new Object[1];

2016-12-18 11:20:33 538

原创 Java实现(12)——轻量级模式(FlyWeight Pattern)

轻量级模式用于减少对象的数量,减少内存的使用以及增加程序的性能。它通过重复利用已存在的相似的对象来达到减少对象数量,如果没有相匹配的对象则会创建新的对象。本例中需要画20个不同位置的圆,但是只创建5个对象。public interface Shape { void draw();}import java.util.HashMap;/** * Created by w

2016-12-17 10:53:12 662

原创 Java实现(11)——外观模式(Facade Pattern)

外观模式隐藏系统的复杂性,提供用户统一的接口访问系统。public interface Shape { void draw();}public class Circle implements Shape { @Override public void draw() { System.out.println("Circle::draw()")

2016-12-17 10:27:11 371

原创 Java实现(10)——装饰者模式(Decorator Pattern)

装饰者模式允许开发者向一个已经存在的对象中增加新的功能,而不改变对象的结构。这种模式创建一个原类的包装类,通过提供额外的功能保持原有对象的简洁性。本例中通过创建一个Shape接口,具体实现Shape接口的类,创建装饰类ShapeDecorator实现Shape接口,同时拥有一个Shape对象的实例。public interface Shape { void draw();}p

2016-12-17 10:13:22 343

原创 Java实现(09)——组合模式(Composite Pattern)

组合模式将一组对象以树的形式看成一个整体。import java.util.ArrayList;import java.util.List;/** * Created by wang on 16-12-17. */public class Employee { private String name; private String dept; pri

2016-12-17 09:49:19 679

原创 Java实现(08)——过滤器模式(Filter Pattern)

过滤器模式可以帮助开发者根据一些条件来选择对象,也可以是这些条件的组合。本例创建一个Person类,和Criteria接口,以及具体的实现。public class Person { private String name; private String gender; private String maritalStatus; public Perso

2016-12-17 09:20:42 2586

原创 安装使用FLTK图形库

FLTK是Fast Light Toolkit的简称,是一个跨平台的C++ GUI包,FLTK提供xiandai GUI功能,而且通过OpenGL支持3D图像。下载FLTK安转包fltk-1.3.4-1-source.tar.gz:http://www.fltk.org/software.php?VERSION=1.3.4&FILE=fltk/1.3.4/fltk-1.3.4-1-sour

2016-12-13 08:27:49 5365 1

原创 Java实现(07)——桥接模式(Bridge Pattern)

桥接模式用于连接两个不相干的抽象实现,这种模式中存在一个当做桥梁的接口,本例展示可以用不同的颜色画一个圆,但是提供相同的抽象接口。public interface DrawAPI { public void drawCircle(int radius, int x, int y);}public class RedCircle implements DrawAPI {

2016-12-08 08:43:55 521

原创 Java实现(06)——适配器模式(Adapter Pattern)

适配器模式用于连接两个不兼容的接口,生活中的一个例子就是笔记本需要通过读卡器读取内存卡中的数据,读卡器就相当于适配器。本例中使用MediaAdapter继承MediaPlayer接口,同时使用AdvancedMediaPlayer中类的对象。public interface AdvanceMediaPlayer { public void playVlc(String fi

2016-12-07 20:35:07 427

原创 Java实现(05)——原型模式(Prototype Pattern)

原型模式通过给出一个原型对象来指明所创建的对象的类型,然后用复制这个原型对象的办法创建出更多同类型的对象。public abstract class Shape implements Cloneable { private String id; protected String type; abstract void draw(); public Str

2016-12-06 10:55:00 507

原创 Java实现(04)——建造者模式(Builder Pattern)

建造者模式一步一步地通过简单的对象创建复杂的对象。本例介绍快餐店中的快餐,快餐有汉堡和饮料,汉堡分为蔬菜汉堡和肌肉汉堡,饮料分为百事和可口可乐。汉堡需要盒子来装,可乐需要瓶子。通过创建一个Meal类来表示点的快餐。创建食物以及包装

2016-12-06 09:22:02 1122

原创 Java实现(03)——单例模式(Singleton Pattern)

单例模式是Java模式中最简单的模式之一,这种模式只允许用户创建一个类的实例。本例中创建一个SingleObject类,它有一个私有的构造器,和一个静态成员变量,通过静态方法获取唯一的实例。public class SingleObject { // create an object of SingleObject private static SingleObje

2016-12-05 19:48:34 446

原创 Java实现(02)——抽象工厂模式(Abstract Factory Pattern)

抽象工厂模式建立父类的工厂,通过父类创建子类工厂,通过子类工厂创建对象。本例中有两个接口Shape和Color,通过两个子工厂,ShapeFactory和ColorFactory,父类工厂FactoryProducer生成相应的子类工厂。public interface Shape { void draw();}public class Square implements Sha

2016-12-05 19:32:19 460

转载 Android MPEG4Writer.cpp 简单跟读

首先在前面申明一点,本人接触Android的时间并不长,只是因为喜欢 Android开发,并且项目有需要,才会去看Android framework 层MPEG4Writer.cpp 的代码。在这里也只是想简单的记录下自己这几天跟读代码的结果,也好给自己个交代。其中有些知识还是感谢网上其它大神的指点,这里给出我参考的博文的链接点击打开链接 http://m.blog.csdn.net/blog

2016-12-05 15:14:24 4028

原创 Java实现(01)——工厂模式(Factory Pattern)

在Java中工厂模式是最常用的模式之一,提供了一种非常好的创建对象的的方法,因此可以将这种模式归类于创建型模式。在工厂模式中,用户可以很容易地创建对象而不需要知道内在的逻辑,可以使用通用的接口引用创建的对象。  本例中创建一个Shape类型的接口,和Cricle, Square, Rectangle实现的类,创建一个ShapeFactory工厂类,示例通过向ShapeFactory中传递(CI

2016-12-02 19:48:10 468

原创 设计模式Java实现——序言(0)

设计模式是很有经验的面向对象的程序员总结出的最佳实践,这个系列主要来自于翻译https://www.tutorialspoint.com/design_pattern/index.htm上的所有设计模式,通过简单的示例帮助人们理解各种设计模式的概念。  设计模式最早是由Gang of Four在Design Patterns - Elements of Reusable Object-Orie

2016-12-02 17:59:18 308

转载 UML类图几种常见的关系

在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)         1. 泛化(Generalization)        【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的

2016-12-02 17:14:13 419

原创 android audio服务启动

src/framework/av/media/audioserver/main_audioserver.cpp通过fork()函数创建一个子进程,父进程中返回子进程的ID号,执行的是if语句,子进程返回0,执行else语句。可以看到在else语句中有三个四个服务:AudioFlinger::instantiate();AudioPolicyService::instantiate();

2016-12-01 10:46:32 3407 1

空空如也

空空如也

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

TA关注的人

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