可变参数模板实现可变参数字符串一定程度替代sprintf
直接看代码:
#include <iostream>
#include <sstream>
#include <string>// 可变参数终结
template <typename T>
std::string ArgString(const T& t)
{std::stringstream ss;ss << t;return ss.str();
}// 可变参数递归展开
template <typename T, typename... Arg>
std::string ArgString(const T& t, Arg&&... arg)
{std::stringstream ss;ss << t;return ss.str() + ArgString(std::forward<Arg>(arg)...);
}
使用很简单:
auto str = ArgString("猪肉", 10, "块钱一斤!");
std::cout << str << std::endl;
输出:
可变参数模板实现可变参数字符串一定程度替代sprintf相关推荐
- c 语言 可变参数前要加形参,C/C++中可变参数的用法详细解析
可变参数即表示参数个数可以变化,可多可少,也表示参数的类型也可以变化,可以是int,double还可以是char*,类,结构体等等.可变参数是实现printf(),sprintf()等函数的关键之处, ...
- C,C++中使用可变参数
可变参数即表示参数个数可以变化,可多可少,也表示参数的类型也可以变化,可以是int,double还可以是char*,类,结构体等等.可变参数是实现printf(),sprintf()等函数的关键之处, ...
- C 语言的可变参数类型 stdarg
va_list/va_start/va_arg/va_end这几个宏,都是用于函数的可变参数的. 我们来看看在vs2008中,它们是怎么定义的: 1: ///stdarg.h2: #define va ...
- 探究C/C++可变参数
C/C++支持可变参数个数的函数定义,这一点与C/C++语言函数参数调用时入栈顺序有关, 首先引用其他网友的一段文字,来描述函数调用,及参数入栈: ------------ 引用开始 -------- ...
- 代码模板在哪里_C++的可变参数模板
背景 一切都从函数传参开始说起.我们知道,在C语言中有个神奇的函数:printf: printf("%s : %dn","gemfield number",70 ...
- JavaSE——面向对象高级(继承、final关键字、抽象类与接口、多态、Object类、内部类、包装类、可变参数)
第3节 面向对象高级 一.继承 1.1 概述和使用 继承是java面向对象编程技术的一块基石,因为它允许创建分等级层次的类.继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法 ...
- 在C/C++函数中使用可变参数
原文链接地址:http://blog.csdn.net/djinglan/article/details/8425768 下面介绍在C/C++里面使用的可变参数函数. 先说明可变参数是什么,先回顾一下 ...
- C++11特性——可变参数
在传统的C和C++中,函数形参和实参的个数不仅需要保持一致,而且需要显式定义出来,是固定的.在C++11中增加了可变参数这种特性,这篇文章就学习下C++11的可变参数. C++11的可变形参提 ...
- 可变参数实现工厂模式
背景 最近在看webrtc的代码,看到音视频编解码器的创建部分,使用了c++11的可变参数模板,实现了编解码器的工厂模式,觉得挺有意思的分享一下.下文中的例子对webrtc的代码做了精简,抽取了与本文 ...
最新文章
- kvo实现原理_KVC、KVO实现原理
- Science:一种新型玻璃,有望让手机告别碎屏!
- Java开发中Websocket的技术选型参考
- redmine + git
- android按钮固定尺寸,如何在android中保持按钮的固定宽高比
- CTF基本赛制与题型
- JTS(Geometry)工具类
- 10.66道经典的Java基础面试题集锦为何晴空
- linux 服务器网络有关的内核参数
- 视频播功能及画面协同操作注意事项
- 如何选择适合自己的 Linux 发行版
- Ubuntu16.04在Wine-3.0平台安装最新版TIM(QQ),不折腾那些没用的!
- 【Java性能调优】(性能调优流程)从系统评估到性能调优
- win7 使用扫描仪扫描照片
- Google的恶搞新闻联播
- 信息隐藏——DCT隐写
- 学习数据结构的意义和作用
- PMP考前冲刺2.20 | 2023新征程,一举拿证
- php从气象局获取天气预报并保存到服务器
- free ebooks: http://stackoverflow.com/questions/194812/list-of-freely-available-programming-books