>>30
よくわからんが何で長さの相違を型の相違にしたいんだ?

文字列リテラルならこういう手があるけど
template <int N> void hoge(const char(&s)[N])
{
}