存储类型的类型以处理变量参数列表

Pat*_*ick 0 c++ variadic-functions typeinfo

有可能做一些事情:

type t = int;//this would be a function which identifies what type the next argument is
if( t == int )
    printf( "%d", va_arg( theva_list, t ) );
Run Code Online (Sandbox Code Playgroud)

以一种相对微不足道的方式?我知道唯一可以保存类型的对象是type_info,我无法弄清楚如何以这种方式使用它.

谢谢,帕特里克

Jer*_*fin 5

一般来说,没有.类型只能在编译时真正存储,操作等.如果你想在运行时使用某些东西,你必须将类型(通常通过相当多毛的元编程)转换为某种类型的值(例如,枚举).

也许如果你对这里你真正想要完成的事情进行更高层次的描述会更好 - 可变参数列表的组合以及"开启类型"的尝试听起来像火车即将发生的崩溃...... .