自定义博客皮肤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)
  • 资源 (33)
  • 收藏
  • 关注

原创 JNI学习笔记(2)

JavaVM接口第一种方式,在加载动态链接库的时候,JVM会调用JNI_OnLoad(JavaVM* jvm, void* reserved)(如果定义了该函数)。第一个参数会传入JavaVM指针。一般都在这个时候保存一个static的JavaVM *jvm,这个jvm指针在进程内是可以放心共享的。第二种方式,在native code中调用JNI_CreateJavaVM(&jvm

2012-09-28 22:15:19 3087 1

原创 结构体的内存对齐

原则一:结构体中元素是按照定义顺序一个一个放到内存中去的,但并不是紧密排列的。从结构体存储的首地址开始,每一个元素放置到内存中时,它都会认为内存是以它自己的大小来划分的,因此元素放置的位置一定会在自己宽度的整数倍上开始(以结构体变量首地址为0计算)。原则二:在经过第一原则分析后,检查计算出的存储单元是否为所有元素中最宽的元素的长度的整数倍,是,则结束;若不是,则补齐为它的整数倍。

2012-09-28 21:55:40 666

原创 Jni学习笔记(1)

jni.h文件必须包含, 定义了所有jni函数声明和数据类型JNIEnv结构包含了JNI函数表第二个参数取决于该方法是静态还是实例调用, 是实例的话第二个参数就是实例本身, 静态的话指向类1.签名用于解决方法重载问题Java方法例子:long f(int n, String s, int[] arr);签名: "(IL

2012-09-23 11:28:27 759

原创 用Android NDK编译ffmpeg(ndk 4r && ffmpeg 0.6.6)

折腾了两天多终于成功在windows下用ndk编译了ffmpeg了,虽然ndk和ffmpeg都使用的是老版本, 至少能编译通过并且正常使用,所以本文只介绍ndk 4r下 ffmpeg 0.6.6的编译,其他版本的不要乱套,不一定成功,本人就吃过这个亏。一、安装cygwin、配置ndk和下载ffmpeg源码        这步就不说了,网上很多教程,再次声明本教程只针对ndk R4这

2012-08-06 16:16:59 2089

原创 ConcurrentModificationException异常

最近在写android程序的过程中,对容器ArrayList操作的时候,碰到了java.util.ConcurrentModificationException异常,是在遍历一个容器的时候,删除容器里面的元素:foreach(element e: list){ if(condition){ list.remove(e); }};官方文档中的说法是这样的:

2012-03-14 17:19:20 14096 2

转载 android解析XML总结(SAX、Pull、Dom三种方式)

很好的一篇对android中xml解析方法进行总结的博文,转自http://www.cnblogs.com/JerryWang1991/archive/2012/02/24/2365507.html在android开发中,经常用到去解析xml文件,常见的解析xml的方式有一下三种:SAX、Pull、Dom解析方式。最近做了一个android版的CSDN阅读器,用到了其中的两种(sax,

2012-03-03 15:16:29 621

转载 Java抽象类和接口的区别

abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是有很

2012-02-28 13:04:04 301

原创 C++代码优化(2)函数设计与返回值优化

最近在看《提高C++性能的编程技术》,看到返回值优化这一章的时候顺便温习一下《高质量C++编程指南》相应的章节。(1)函数设计        1、参数的书写要完整,不要贪图省事只写参数的类型而省略参数名字。如果函数没有参数,则用void填充。void SetValue(int width, int height); // 良好的风格void SetValue(int, int);

2012-02-24 13:12:03 1584

原创 C++代码优化(1)

经常能看到论坛上讨论C++好还是JAVA好,哪个效率高等等,其实作为编程语言,它们必有自己存在的价值,在某一领域发挥着它们的作用。可以说一个C++菜鸟写出来的程序的性能肯定没有一个JAVA老手写出来的程序的性能好,可见程序性能的好坏是要看程序员的功力。最近在看《提高C++性能的编程技术》,边看边把一些有用的技巧整理一下写到博客上。(1)缓式构造        往往性能的优化经常需要

2012-02-23 12:25:52 673

原创 C++中的重载、覆盖和隐藏

重载:函数被重载是发生在同一个范围内的,例如一个类中的两个成员函数,函数名相同,但是参数不同,与virtual关键字无关系。class A{ void f();//3个f互为重载函数 void f(int); void f(int,float);}覆盖:函数覆盖发生在不同的范围类,例如位于派生类与基类中的两个函数,函数名相同,参数也相同,而且基类函数必须要有virtual

2012-02-19 14:29:51 473

转载 虚函数表指针,虚函数表

虚函数表对C++ 了解的人都应该知道虚函数(Virtual Function)是通过一张虚函数表(Virtual Table)来实现的。简称为V-Table。 在这个表中,主是要一个类的虚函数的地址表,这张表解决了继承、覆盖的问题,保证其容真实反应实际的函数。这样,在有虚函数的类的实例中这个表被分配在了 这个实例的内存中,所以,当我们用父类的指针来操作一个子类的时候,这张虚函数表就显得由为重要

2012-02-15 12:04:39 2147

原创 .x文件结构分析

之前在玩directx编程的时候,对于组织3D网格模型数据的文件,我用过几种格式,分别是.x,.obj,.sdkmesh等等,.x文件用得比较多,.obj文件比较简单,.sdkmesh是要用directx SDK里面的工具转化而成的,看SDK文档说推荐用它,因为会比较高效(好久以前看的了,好像是这样)。在这里对.x文件进行分析一下,对于以后使用physX,bullet等做物理模拟碰、撞检测等会有帮

2012-01-26 17:58:16 2580

原创 Linux2.6系统调用劫持介绍

这几天做操作系统课程的作业,其中一个要求是设计内核模块,在查阅资料的过程中发现内核模块可以在不重新编译内核的情况下增加内核的功能,当然也可以对内核进行修改,实现对系统调用的劫持。这篇文章就是对linux下劫持系统调用的介绍和资料的整理。一、介绍        先介绍一下内核模块。内核模块是在操作系统需要的时候动态载入的目标文件对象,链接成内核的一部分,从而可以在不重新编译整个内核的

2012-01-25 17:24:06 2565

原创 A*寻径算法

看了gamedev上的一篇文章http://www.gamedev.net/page/resources/_/technical/artificial-intelligence/a-pathfinding-for-beginners-r2003,对A*算法有了一定的理解,把算法过程用自己的话描述出来,以便于以后有空的时候实现一下。 主要公式 F = G + H,见原文如下:G = th

2011-11-30 14:06:30 832

原创 static_cast、dynamic_cast、reinterpret_cast、和const_cast

标准C++中有四个类型转换符:static_cast、dynamic_cast、reinterpret_cast、和const_cast。下面对它们一一进行介绍。 static_cast用法:static_cast ( expression_r_r )该运算符把expression_r_r转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要

2011-11-30 10:58:11 413

原创 拷贝/复制构造函数

拷贝构造函数将会被调用。1).一个对象以值传递的方式传入函数体2).一个对象以值传递的方式从函数返回3).一个对象需要通过另外一个对象进行初始化例子如下Point:: Point (const Point &);默认的拷贝构造函数一般可以解决很多情况,但是如果要拷贝的对象里面有指针,指向一块内存,拷贝的对象的指针也指向这个地方,然后拷贝的对象析构的时候,会释

2011-11-24 14:12:40 460

原创 new 与 malloc 的区别

1. new/delete是c++的运算符, 而malloc/free是c语言的标准库函数,都可以用用来动态分配和释放内存。2. 对于用户自定义对象而已,malloc只是分配空间,而new却能调用调用对象的构造函数,在delete时候调用对象的析构函数。3. new可以认为是malloc加上构造函数的执行。new出来的指针式直接带类型信息的,而malloc返回的void*指针。4. n

2011-11-24 13:58:58 432

原创 WPF 触发器

1.属性触发器主要用于依赖属性Style.Triggers>                    Trigger Property="IsMouseOver" Value="True">                        Setter Property ="Background" Value="Green"/>                    Tri

2011-11-24 13:36:30 2116

转载 WPF 关键帧动画

关键帧动画到目前为止介绍的所有动画都是使用线性插值从开始点移动到结束点。但是如果需要创建具有多个分段的动画或者不规则移动的动画,该怎么办呢?例如,您可能希望创建一个动画,快速地将一个元素滑入到视图中,然后慢慢地将它移动到正确的位置。可以通过创建两个连续的动画,并使用BeginTime属性在第一个动画之后开始第二个动画实现这种效果。然而,还有更简单的方法-- 可以使用关键帧动画。关键帧动画是

2011-11-16 23:34:24 3077

转载 TemplateBinding和Binding有什么区别?

TemplateBinding是Binding的一个轻量级版本,它失去了成熟版本Binding的很多功能,比如继承内容引用(inheritence context referencing),RelativeSource引用,还有通过IValueConverter/TypeConverter机制的动态类型转换。它仅支持由模板产生的FrameworkElements,它的数据源引用会指向模板中的父级元

2011-11-16 12:41:49 7791 1

ActionScript3.0编程精髓(中文版).part2.rar

(ActionScript3.0编程精髓 中文版, 清晰度不错,这是第二部分,一共两部分) 作者:(美)姆科(Moock,C.) 著,林吓洪 等译    出版社:机械工业出版社    出版时间:2008-5-1 页数:782 本书极其透彻而详尽地介绍了ActionScript编程。如果你此前没有编程知识,那么本书将循序渐进地指引你开始精通ActionScript之旅。如果你对ActionScript有所了解,那么本书将帮助你填补知识空缺并规范地回顾重要概念。 ActionScript 3.0是F1ash编程语言的一次重大升级。它更加高效、更加清晰,并且比先前版本更加完善。本书对理解ActionScript 3.0所需要的每个重要概念给出了易懂而细致的解释,对实现ActionScript 3.0的全部潜能提供了足够深入的讲解。

2012-04-28

ActionScript3.0编程精髓(中文版).part1

(ActionScript3.0编程精髓 中文版, 清晰度不错,这是第一部分,一共两部分) 作者:(美)姆科(Moock,C.) 著,林吓洪 等译    出版社:机械工业出版社    出版时间:2008-5-1 页数:782 本书极其透彻而详尽地介绍了ActionScript编程。如果你此前没有编程知识,那么本书将循序渐进地指引你开始精通ActionScript之旅。如果你对ActionScript有所了解,那么本书将帮助你填补知识空缺并规范地回顾重要概念。 ActionScript 3.0是F1ash编程语言的一次重大升级。它更加高效、更加清晰,并且比先前版本更加完善。本书对理解ActionScript 3.0所需要的每个重要概念给出了易懂而细致的解释,对实现ActionScript 3.0的全部潜能提供了足够深入的讲解。

2012-04-28

IP解析(基于珊瑚虫QQ数据)

基于珊瑚虫QQ数据,把IP地址解析成一个地址信息。

2011-11-05

各个公司面试题

各大公司的面试题,非常多非常全面。总共有200多份面试题, 值得面试者拥有的珍贵资料~

2011-10-23

汇编课件(华工)

华工的汇编语言ppt课件~~~~~~~~~~~~

2011-10-21

OpenCV实现的鼠标控制器

OpenCV实现的鼠标控制器。 运用Opencv库实现的一个鼠标控制器, 可以用手势来控制鼠标。

2011-10-21

自己写的一个贪吃蛇游戏分享

很久以前自己用c++在vs2008下实现的一个贪吃蛇游戏, 框架用的是win32, 绘图用的是简单的windows GDI, 用到了双画面缓冲, 很适合学游戏开发的初学者, 代码风格一般般, 如果有什么地方写得不好的话, 欢迎大家一起交流讨论哈~

2011-10-21

Direct3D游戏编程入门教程(第二版)

Direct3D游戏编程入门教程(第二版)。 介绍基于directx SDK的游戏开发技术, 由浅入深, 从2D的设计到3D的设计, 是学习游戏编程的人的好教材~

2011-10-19

VC++6游戏编程

VC++6游戏编程。 介绍用vc6.0开发几个简单的游戏, 是程序员学习游戏编程的很好范例。

2011-10-19

DXUT设计指南

DXUT是directx的一个快速开发游戏的框架, 使用它的话可以隐去很多directx的使用细节, 这个指南介绍这个框架是如何运作的, 和如何使用。

2011-10-19

DirectX教程

DirectX教程。 介绍一些入门知识, 例如如何初始化dx, 还有一些简单设定。

2011-10-19

OpenGL拾取代码范例

OpenGL 拾取。代码诠释了一个简单的拾取过程, 是新手学习拾取的一个很好的范例~

2011-10-19

quake3源代码

quake3这么经典的游戏相信大家都玩过, 他是由opengl写的, 这份源代码, 对于学习opengl,想用opengl写大型游戏的人很有帮助~

2011-10-19

基于openGL的三维地形场景的生成

基于openGL的三维地形场景的生成, 这个是个生成随机地形的例子的算法解释, 对新手很有帮助~

2011-10-19

OpenGL常用_API

OpenGL常用_API. 适合开发的时候或者学习的时候用, 快速找到对应的API~

2011-10-19

NeHe.OpenGL.Tutorial中文

NeHe.OpenGL.Tutorial中文 NeHe.OpenGL.Tutorial中文 NeHe.OpenGL.Tutorial中文

2011-10-18

线程池实现.h

用c++实现的一个线程池功能~ ~~~~~~~~

2011-10-18

VC++游戏编程

VC++游戏编程VC++游戏编程VC++游戏编程 很适合新手入门~

2011-10-18

myeclipse6教程

myeclipse6教程 myeclipse6教程 myeclipse6教程

2011-09-28

Programming C#中文版(第4版)PDF

Programming C#中文版(第4版)PDF Programming C#中文版(第4版)PDF

2011-09-28

Linux爱好者入门教程

Linux爱好者入门教程 Linux爱好者入门教程

2011-09-28

OpenGL-Nehe完整中文教程

OpenGL-Nehe完整中文教程 OpenGL-Nehe完整中文教程

2011-09-28

glew-1.5.7-win32

glew-1.5.7-win32 glew-1.5.7-win32 glew-1.5.7-win32

2011-09-28

2009年全国大学生信息安全竞赛作品集

2009年全国大学生信息安全竞赛作品集 2009年全国大学生信息安全竞赛作品集

2011-09-28

MFC经典教材-深入浅出MFC(简体版)

MFC经典教材-深入浅出MFC(简体版) MFC经典教材-深入浅出MFC(简体版) MFC经典教材-深入浅出MFC(简体版) MFC经典教材-深入浅出MFC(简体版)

2011-07-06

IBM大型主机导论复习资料(华工)

此为本人复习IBM大型机导论这门课复习时候的笔记,适用于计算机科学与工程学院,认真看这笔记者保证90分以上。

2010-07-01

C++笔记 适合MFC初学者

C++笔记 适合MFC初学者 自己看孙鑫MFC深入详解的视频的时候边看边写的 ~~~

2010-07-01

空空如也

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

TA关注的人

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