精灵动画作用在精灵上,使精灵表现出动画效果。本文将详细说明如何创建一个简单的动作系统,暂时只有 4 中基本的动作——平移、旋转、缩放和 Alpha 变化,并且这些动作能够自由组合,组成串行动作或并行动作。下图是动作系统的类图: 动作就是进行插值的过程,需要在每一帧被调用。FrameCall 顾名思义 ...
分类:
其他好文 时间:
2017-09-03 11:07:33
阅读次数:
196
通用函数可变参模板 函数模板的覆盖 函数模板的重载 ...
分类:
编程语言 时间:
2017-04-13 00:13:31
阅读次数:
195
#include
template
void F(Ts&& ... params) {
printf(std::forward(params)...);
}
int main()
{
auto f = [] { printf("hello world"); };
f();
F("%s: %d", __FUNCTION__, __LINE__);
return...
分类:
编程语言 时间:
2015-07-24 16:12:39
阅读次数:
292
在C++11中出现的变参模板,可以让我们不需关心函数调用的参数多少,类似实现C中的printf函数那样。变参依赖于C++强大的模板可以这样声明template // Args就是一种类型参数包,在定义的函数中需要递归去解析void MutiArg(const T1&t1,Args... args.....
分类:
编程语言 时间:
2015-07-11 20:12:01
阅读次数:
158
#include "scripting/js-bindings/manual/ScriptingCore.h"
#include
#include
/// args push helper
template inline
void jsx_unpack_arg(std::stringstream& ss, int& carg, const _Ty& arg)
{ // template ...
分类:
编程语言 时间:
2015-07-06 01:28:35
阅读次数:
212
代码: /// FUNCTION TEMPLATE: luax_vcall
template inline
void luax_vcall(const char* func, _Args...args);
template inline
_Result luax_vxcall(const char* func, _Args...args);
/// TEMPLATE luax_vxcall...
分类:
编程语言 时间:
2015-06-30 13:06:58
阅读次数:
155
这篇文章本来是前天发的,但是不知道为什么CSDN上没有显示,可能是我没发,记错了。又由于没有留底稿,还是重写一下吧,也为知己不留底稿的恶习做个标记。
之所以接触C++11是因为自己前天突发奇想想用C++来模拟一下C#里的委托,但是尝试过很多方法和各种搜索后,知道之前的C++是不支持模板重载的,所以不可能通过编写多种版本的模板来实现变参的效果,如果使用《C++设计新思维》里的TypeList方式的话...
分类:
编程语言 时间:
2015-04-11 11:49:07
阅读次数:
191
编译器对C++ 11变参模板(Variadic Template)的函数包扩展实现的差异
题目挺绕口的。C++ 11的好东西不算太多,但变参模板(Variadic Template)肯定是其中耀眼的一颗明星,在C++设计新思维中,你可以看到很多模版的代码为了支持不确定的参数个数,而要重载1个参数到N个模板参数的N个函数。虽然种代码一般也是用会用宏和脚步辅助生成。但我想也没有人愿意看到几千行这...
分类:
编程语言 时间:
2014-12-30 07:05:19
阅读次数:
258
编译器对C++ 11变参模板(Variadic Template)的函数包扩展实现的差异 题目挺绕口的。C++ 11的好东西不算太多,但变参模板(Variadic Template)肯定是其中耀眼的一颗明星,在C++设计新思维中,你可以看到很多模版的代码为了支持不确定的参数个数,而要重载1个参数到N...
分类:
编程语言 时间:
2014-07-28 11:21:10
阅读次数:
266
Wrote by mutouyun. (http://darkc.at/cxx-type-list/)
群里有个朋友要实现这么一个功能:如何在编译期把一个函数类型的参数减少一个。
简单来说,就是实现下面这个模板:
remove_func_par::type; // type = void(int, long)
根据输入的编译期整数,把函数参数表里对应的参数干掉一个。
为了实现...
分类:
编程语言 时间:
2014-06-05 06:04:09
阅读次数:
273