Actualmente tengo una función variadica que toma un número arbitrario de argumentos de tipos arbitrarios (duh), sin embargo, quiero restringir los tipos a los que son solo POD, y también del mismo tamaño o más pequeños que el de un vacío *.Plantillas variables y rasgos de tipo
El vacío * El registro fue fácil, acabo de hacer esto:
static_assert(sizeof...(Args) <= sizeof(PVOID), "Size of types must be <= memsize.");
sin embargo no puedo encontrar la manera de hacer lo mismo para std :: is_pod.
¿Es esto posible?
'sizeof (... args)' probablemente no hace lo que se propone - Devuelve cuántos argumentos hay en el paquete de argumentos (y no en sus tamaños). Ver [esto] (http://ideone.com/X8X3p). Si desea limitar su tamaño, hacer algo como 'static const bool value = sizeof (Head) <= sizeof (void *) && ...' ayudaría, vea [this] (http://ideone.com/PUMXx) – Vitus