あああああぁぁぁぁぁもおおおおおちょおおおおお気に入らねえええええぇぇぇぇぇ!!!!! 以下のコードは GCC 4.3.0 以降で -std=c++0x オプションを指定しないとコンパイルが通りません. #include <string> #include <iostream> template<typename T> struct lr_impl{ static int const value = -1; }; template<typename T> struct lr_impl<T&>{ static int const value = 1; }; template<typename L, typename R> int lr(){ return (lr_impl<L>::value + lr_impl<R>::value) / 2; } template<typename T> s