【博客18】c++11:让你的形参不再 "固定"

内容: 记录一下在书里学到的利用c++11实现可变参数模板函数,我今天写下第一种实现方式,利用递归函数方式展开参数包,你需要提供一个参数包展开的函数,和一个递归的终止函数,递归终止函数是用来终止递归的。

代码:
在这里插入图片描述
运行结果:
在这里插入图片描述
分析: 此代码会一直输出参数,直到执行递归终止函数。参数包Args在展开的过程中递归调用自己,每调用一次就减少参数包中的一个参数,直到没有参数的时候,那么就会调用你准备好的递归终止函数。

**注意:**上述代码在旧的vs和旧的g++版本上测试不一定通过,比如我旧的vs2012就不通过,会提示Args参数有问题。然后在我的linux上新版本g++可以编译通过,运行也能得到正确结果
下面是我的linux g++版本(输入g++ -v可以查看自己的版本)
在这里插入图片描述

大三学生一枚,文章均非抄袭或者模仿,均为原创,仅代表个人观点,如果文章有错误的地方,欢迎在下方提出,每条评论我都会去认真看并回复,同时感谢指正的前辈。

猜你喜欢

转载自blog.csdn.net/qq_43684922/article/details/89413402