自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (4)
  • 收藏
  • 关注

原创 C++模板特化与重载

<br />重载函数模板:<br />#include <iostream>template<typename T> int f(T){ return 1;}template<typename T> int f(T*){ return 2;}int main() { std::cout << f<int*>((int*)0) << std::endl; //输出1 std::cout << f<int>((int*)0) << std::endl

2011-03-29 15:28:00 8117 1

原创 C++模板实例化

实例化:一个通过使用具体值替换模板参数,从模板产生的普通类,函数或者成员函数的过程。特化:就是上述过程最终获得实体。延迟实例化:当隐式实例化类模板时,同时也实例化了该模板的每个成员声明,但并没有实例化相应的定义,然而,存在例外:1.如果类模板包含了一个匿名的union,那么该union定义的成员同时也被实例化了2.作为实例化类模板的结果,虚函数的定义可能被实例化,但也可能没有,这依赖于具体实现C++的实例化模型:两阶段查找:第1阶段:发生在模板的解析阶段非依赖型名称:普通查找+ADL非受限的依赖型名称:普通

2011-03-29 12:12:00 20779

原创 C++模板中的名称

名称的分类:标识符、运算符id、类型转换函数id、模板id、非受限id、受限id、受限名称、非受限名称、依赖性名称、非依赖性名称如果一个名称使用域解析运算符或者成员访问运算符来显式表明它所属的作用域,就称该名称为受限名称。如果一个名称依赖于模板参数,就称为依赖性名称。名称查找:受限名称的名称查找是在一个受限作用域内部进行的,该受限作用域由一个限定的构造所决定,如果该作用域是一个类,那么查找范围可以到达它的基类;但不会考虑它的外围作用域。非受限名称的查找则相反,可以在所有外围类中逐层地进行查找(但在某个类内部

2011-03-28 22:39:00 3250

转载 变量的定义,初始化和声明

<br />变量的定义、初始化和声明在学高级编程语言时已经讲到过的,不过通过自己的编程经验,这里面有一些基本的本质问题要掌握。 <br />1-definition 变量的定义<br />变量的定义主要是为变量申请内存空间用。(编译器要管理该变量名字和申请该变量的内存大小)<br />比如: QObject * myobject;<br />int x;<br />第一个语句是定义一个指针类型的变量myobject,4个字节的内存空间。(在这里一定要与QObject * myobject=new QObje

2011-03-25 14:38:00 2672

原创 极小化极大算法与负极大值算法

极小化极大算法(Minimax)     Minimax算法又名极小化极大算法,是一种找出失败的最大可能性中的最小值的算法。Minimax算法常用于棋类等由两方较量的游戏和程序,这类程序由两个游戏者轮流,每次执行一个步骤。我们众所周知的五子棋、象棋等都属于这类程序,所以说Minimax算法是基于搜索的博弈算法的基础。该算法是一种零总和算法,即一方要在可选的选项中选择将其优势最大化的选择,而另一方则选择令对手优势最小化的方法。     我们知道,常用的博弈算法都是基于搜索的博弈算法,所有可能的下棋步骤构成一个

2011-03-21 22:07:00 21353 1

转载 CString实现原理

MFC中CString类的实现在strcore.cpp中,Cstring封装了一个用来存放字符串的缓冲区和对施加于这个字符串的操作。也就是说 ,CString里需要有一个用来存放字符串的缓冲区,并且有一个指针指向该缓冲区,该指针就是LPTSTR m_pchData。但是有些字符串操作会增建或减少字符串的长度,因此为了减少频繁的申请内存或者释放内存,Cstring会先申请一个大的内存块用来存放字符串。这样,以后当字符串长度增长时,如果增加的总长度不超过预先申请的内存块的长度,就不用再申请内存。当增

2011-03-18 19:55:00 1560

转载 LUA函数和C函数的相互调用

<br />本文转自:http://blog.csdn.net/mrtechno/archive/2007/01/31/1498554.aspx<br /> 1. 简介1.1 从C程序调用LUA函数<br />LUA的函数和普通变量一样也是First Class Variable类型,可以看作函数指针变量参与栈操作。因此调用过程分为如下几个步骤:请求LUA函数(指针)入(GLOBAL)栈。 将函数需要的参数入栈,入栈顺序按照参数被声明的顺序。 告知LUA虚拟机入栈参数的个数、函数返回值的个数,并调用此LUA

2011-03-11 15:52:00 3687 1

转载 理解lua中Weak Table

<br />如果你对lus语言的中weak table不明白的话,那这篇文章应该对你有帮助。 <br /><br />所有脚本语言几乎都有垃圾回收器(GC),当然lua也有。 <br /><br />不明白GC不要紧,下面让我来解释: <br />这一切要先从现代编程语言的鼻祖 — C语言开始。 <br /><br />如果你在C中要使用变量,可以这样定义变量,如: <br />---------------------------------------------------- <b

2011-03-09 15:02:00 6659 2

转载 dofile和require

         在lua中写个试验性质的小程序可能只要一个脚本文件就搞定了,不过一旦程序上了一定规模,为了方便阅读和维护,分开多个文件就很有必要了。那么如何才能在一个lua脚本文件中调用另一个文件呢?这个就是今天的研究课题。        首先出场的就是dofile。我们知道一个lua文件是作为一个代码块(chunk)存在的,其实质就是一个函数,那么最简单的,我在一个外部lua文件中写一段代码,然后在主lua文件中用dofile调用,外部文件的代码块就会执行了。 --outter.lua: pri

2011-03-06 19:27:00 15168

精通iOS开发(第6版) 英文版

学习IOS的不二之选,好好学习,天天向上。

2015-04-10

Effective_STL.pdf

更加灵活的使用STL.

2012-11-06

PC+游戏编程(人机博弈)(pdf+格式

书 名: PC游戏编程(人机博弈) 作 者: 王小春 出版社 : 重庆大学出版社 出版日期: 2002年6月 定 价: 38元 简 介:本书是一本专论机器搏弈的作品。详细披露了编写人机对弈程序的原理,技术和各种相关内容。包含一个完整的中国象棋人要对弈程序和一个完整的五子棋人机对弈程序实例。毫无保留的展示了估值核心,走法产生,以及约十种不同的搜索引擎,彻底解析了高性能博弈程序的秘密所在。实用性是本书的最大特点,本书的目标是让一个粗通程序设计的人在一个月内写出令人惊讶的人机博弈程序。完全没有一般人工智能书籍晦涩难懂的感觉。

2012-11-06

tcp/ip协议详解(卷1)

如果你想学习网络编程,就下载它吧,它是学习网络编程的好书。

2011-03-15

空空如也

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

TA关注的人

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