自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (24)
  • 收藏
  • 关注

原创 深度探索c++对象模型之placement operator new语意

首先谈谈new、delete和operator new、operator delete的区别:new和delete只是c++中的运算符而已!而operator new和operator delete则是c++中的函数,是可以重载的函数,被重载时,第一个参数是是要求分配空间的大小(字节),类型一般是size_t,除此之外,还可以带其它的参数,但该函数的返回类型必须是void *;此外,它与new不同

2016-11-18 18:50:08 668

原创 深度探索c++对象模型之带有constructor类数组的new语义学

还记得我们以前谈过的“vec_new”吗,它只针对有constructor的类数组,像我们写【int *p = new int[5];】或【My_Simple_Class *pm = new My_Simple_Class[7]; //我们的My_Simple_Class没有定义声明constructor或destructor】,在编译器层面是没有使用vec_new的,因为它们只是单纯的开辟内存和

2016-11-13 20:19:29 968

原创 深度探索c++对象模型之new和delete运算符介绍

在c++中,无论是new还是delete,它们都被当成是运算符的,new运算符对应的是C语言中的malloc函数【在new的重载运算符函数里面调用malloc】,而delete自然对应的是C语言中的free函数了。当我们写下一句【int *p = new(7);】时,在编译转化后,最简单的版本也是这种: //编译过后 int *p = _new( sizeof(int) ); //第一步 *p

2016-11-09 20:31:16 605

原创 深度探索c++对象模型之类对象数组的黑盒

还是以前的Point类,如果我们用Point声明了一个数组,比如【Point p[10];】,在编译器层面会发生什么呢?这要分为两种情况,首先,如果我们在定义Point类时,既没有定义一个constructor,也没有定义一个destructor,那么建立Point类对象的数组和建立一个int类型的数组并没有什么本质区别,只要开辟出10个连续的内存能储存这些Point元素就可以了;但是,如果Poi

2016-11-07 17:55:20 545

原创 深度探索c++对象模型之类全局对象的初始化与析构

与C语言相比,c++复杂的地方与很多,其中之一就是对全局对象的初始化。在C语言中很简单,不管是内带类型还是自定义的结构体类型,如果声明为全局对象并且我们没有给它们一个显示的常量初始化的话,那么它们都会被0默认初始化。但在c++中这样显然不行,想象一下一个有着虚函数的类全局对象,我们该如何给其中的虚函数表指针初始化呢?所以,考虑一下这个代码段: Matrix identity; int main

2016-11-05 18:42:25 780

原创 深度探索c++对象模型之类对象的赋值

在C++中,当我们声明一个类时,如果没有给这个类操作符“=”定义一个函数,那么一般情况下编译器会自动为这个类合成一个默认的copy assignment operator【拷贝赋值操作符】,而这种copy assignment operator的工作模式是bitwise copy,所谓的bitwise copy,意思就是按位施以拷贝【两个类对象除了在内存中的位置不一样,其它的一模一样】。但这种模式

2016-11-04 17:48:54 767 1

原创 深度探索c++对象模型之vptr初始化语意学

上一篇中,我提到了关于一个派生类对象构造时,里面基类们的构造顺序,是从内到外、从根源到末端。所以对一个PVertex对象来说,它的构造顺序是:1、Point   2、Point3d  3、Vertex  4、Vertex3d  5、PVertex,然后书中说到【大意】:在以上的每一个类中,都定义两个虚函数,一个是fun【我自己取的名】,一个是size,其中它俩的关系是,在size中调用fun;然后

2016-11-03 20:38:35 785

原创 深度探索c++对象模型之虚继承的对象构造

郑重声明:以下文字“借鉴”自侯捷老师的译作《深度探索C++对象模型》部分内容,写在这里,算是加深自己对此书内容的记忆,因为鄙人水平太浅,难免有理解错误的地方,如果有朋友看出来,还请费神指出,鄙人不胜感激!       让我们先来看这样一个继承体系,首先声明一个Point类作为基类,然后再声明两个Point3d和Vertex,它们俩都虚拟继承自Point类,接着再申请一个Vertex3d类,它继承

2016-11-02 19:05:51 705

unity2D navigation2D包

可以烘培场景做出导航路线

2023-10-16

南奥1.6外壳(内置佳佳名手等引擎).7z

佳佳是一款开源的象棋软件,而这个包,里面除了佳佳外,还有南奥,名手等知名引擎

2021-05-17

lua-5.1.5.tar

这是一个压缩包,下载之后需要解压

2021-04-15

地表最强【安卓平台可以运行】.apk

这款游戏已开源,对源代码感兴趣的朋友可以移步我的博客(内有链接) 本APP可以在安卓系统手机上运行;鄙人在此声明,我会给第一个通关的网友300块红包作为奖励!证明通关的方法很简单,只要回答一个问题即可:在游戏的剧情里,海绵宝宝为何要背叛人类效力比奇堡(通关后会有剧情菜单,里面以对白的形式介绍了)?

2021-02-14

坦克小战所需的背景音乐

这个都是一些小时候的黑白机游戏音乐,被我拿来当坦克小战的游戏素材。

2017-12-08

坦克小战所需的image图片

这个image,就是游戏里面的素材图片。。。。。。。。。。

2017-12-08

坦克小战所需素材文件

天呐,我真的不想要资源分。但不知道为什么上面没有0的选项。

2017-12-08

IEE二进制转换器

这是一款实时即用的轻便浮点数转换器,熟练的使用它可以帮助您轻松的认识到计算机浮点数的内部表示方法和原理。无需说明手册,一看就会。符号位、指数位以及尾数位都清晰地在框内分离表示出来,内置十六进制、十进制二进制等转换,以及单精度和双精度等转换

2015-12-30

编译原理三巨头打包下载

虎书相比龙书,增加了数据流分析、循环优化、内存管理等内容。而鲸书则侧重对编译器后端优化的处理。

2015-11-19

CPU工作原理及其实现

本文通过制作一个微缩版的四位计算机,来向大家解释CPU工作的物理原理,比如:计算机是如何进行加减乘除等各种运算或控制的。

2015-07-23

VC6.0开发工具

这是一款经典的开发平台,可以方便的查看反汇编代码等,拥有比较健全的调试功能。至于安装步骤,按照提示来就可以了。支持XP和win7系统

2015-06-25

象棋对弈程序的开发

这是一本由胡达先生所著的关于C语言和象棋对弈程序设计思路的好书【虽然没看,但貌似很强大的样子】,跟着书中的内容走,相信所有的内容都理解之后,您一定会成为编程达人。

2014-05-02

象棋软件博弈算法研究

这是一本后缀为nh的电子书,它详细的介绍了象棋软件是如何思考以及给定“最佳”招法的。

2014-04-09

病毒攻击原理

这篇文章详细的介绍了溢出原理的病毒是如何控制别人的计算机的,以及现代对付这种病毒的主要方法。

2014-04-05

编译原理 中文版

如果能将这本书的道理弄明白个一二,可以有效的帮你了解代码的工作原理,并在你以后学习其它高级语言时如虎添翼。

2014-02-18

c语言解析教程

很适合初学者的c语言书籍,详细的解释了各种c程序。

2014-02-11

c++开发出的象棋对弈程序 有详细的制作纲领源码解释说明

这是一款用c++开发出的简易象棋程序,详细的介绍了编程思路,制作纲领,代码解释以及程序实现等,再适合c++入门者不过了。

2013-01-29

用vb开发出的象棋巫师源程序

这是我在烈火网上下的,用vb语言开发,感觉棋力还可以。

2013-01-28

c++开发的简单象棋软件 有源码说明

这是一款很简单的象棋软件,说它简单确实非常简单(电脑太笨),刚才我试下了一盘,没过25步就把电脑宰了,和现在的主流软件实力确实是天壤之别。但这不重要,它主要是用来学习c++的。

2013-01-28

倚天象棋软件

360有可能会对本软件报毒,但我人格保证,绝对属于误报!

2012-11-19

空空如也

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

TA关注的人

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