- 博客(6)
- 收藏
- 关注
原创 C++11 智能指针实现分析
首先声明本文研究的代码为vs2012中的源码,这个编译器还未支持变长参数模板,所以一些地方仍然使用着非常变态的宏元代码。在vs2015版本中,这些智能指针的实现都有了一些细微的变化。可以说随着编译器的更新,一些源码的实现也会跟着发生变化本文分析主题有三个,分别是C++11中的三种类型的智能指针。其中还包含辅助他们工作的一些列代码。废话不多说,直接进入正题 unique_ptrunique_ptr是...
2018-05-20 10:52:47
1082
原创 c++11 make_shared深度研究,从一个函数看仿变长参数模板实现方式
本文基于vs2012中的std::make_shared函数进行分析,选取原因有两个,一是现在公司再用vs2012版本进行开发,我也就自然根据这个编译器进行的研究,第二是vs2012中并没有支持变长参数模板这个C++11的特性,但是make_shared仍然神奇的支持着“变长参数”,这就说明起码vs2012中的make_shared还没有用到变长参数就实现了这个功能,并且也导致一...
2018-05-20 10:48:08
2133
原创 【疯狂模板元0】像写小说一样写一篇技术文章吧
最近有些沉迷于c++的模板元编程,为了学这种被称为黑魔法的编程技术,我还又去学了一下haskell这种神奇的语言。不得不感叹,函数式编程,真特么难。。。之前就听说过一个鄙视链,面向对象程序员鄙视面向过程程序员,函数式程序员鄙视面向对象程序员。当时并不了解函数式编程,也不懂为什么会出现这样的鄙视关系。现在我大概懂一些了。能够使用函数式编程的程序员能力大概都是要高于面向对象程序员的。我这么说可能有的人
2017-10-03 15:27:31
456
原创 游戏技能系统开发探索2
昨天简单的设计了一个可供主角方便使用的技能容器,今天进一步研究这个容器如何设计才可以变成公用型容器。 先把昨天的容器代码拿来看一下class HeroSkillList { public: //获取单例实例方法 static HeroSkillList& Instance(){} std::shared_ptr<SkillBase> FindSkill(std::strin
2017-04-09 14:27:26
1502
原创 游戏技能系统开发探索1
最近在做一个游戏项目,开发过程中遇到需要设计技能系统的问题。个人在这方面并没有多少经验,网上搜到文章也是支离破碎,质量良莠不齐。无奈只好自己去要就一下。光靠脑子想不去记录,过后就会忘掉,所以写个文章记录一下一路以来的思路。这就是写这篇文章的动机 技能系统对于很多游戏来说都是不可或缺的一部分。但是奇怪的是如果去搜索这方面的文章会发现虽然做这方面研究的人不少,但是并没有一套成型的框架能够方便的设计实
2017-04-08 20:03:16
3092
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2017-04-08 17:46:14
200
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人