decltypeでconstを外したい:追記
すばるさんからコメントをいただいて、やりたいことを標準ライブラリでできるようになったのでこれをまたメモしておこうと思います。
type_traitsをincludeして、
std::remove_const<decltype(hoge)>::type fuga;//constのみを外す std::decay<decltype(hoge)>::type fuga;//const,volatile,参照等を外す
今回やりたいことはdecayのほうが適当な気がします。
後、ついでに調べてみたのですが、cv修飾を外すのに
std::remove_const //const std::remove_volatile //volatile
というのがあるようです。
すばるさん、教えていただきありがとうございました。