Concat使用变长的参数模板来接受不同的字符串(string, const char*),为了保证string不会多次分配空间,要先求出所有字符长度之和,分配空间后在依次添加。 变长求和函数: static int _Sum() { return 0; } template<typename T, typename... TArgs> static int _Sum(T t, TArgs... args) { return t + _Sum(args...); } 调用_Sum时,第一个参数会适配T,…