- 289 名前:デフォルトの名無しさん mailto:sage [2008/01/29(火) 22:55:38 ]
- >>287
こんなのでどう template <typename A, typename B> struct max_size { enum{ value = sizeof(A) > sizeof(B) ? sizeof(A) : sizeof(B) }; }; template <typename A, typename B> struct max_size_chain { enum{ value = A::value > sizeof(B) ? A::value : sizeof(B) }; }; template <typename A, typename B, typename C> struct max_size3: max_size_chain<max_size<A, B>, C>{}; template <typename A, typename B, typename C, typename D> struct max_size4: max_size_chain<max_size3<A, B, C>, D>{}; template <typename A, typename B, typename C, typename D, typename E> struct max_size5: max_size_chain<max_size4<A, B, C, D>, E>{}; char buf[max_size5<char, int, short, long, void*>::value];
|

|