C++11で、型推論autoを使って楽をしようと思ったんだが、
2つの変数の型を自動的に整合させる方法が分からないのだ。

void some_job() {
const auto loop_times = 10;

for (auto cnt = 0; cnt != loop_times; ++cnt) {
/* ループ内の処理 */
}
} // (インデントはおそらく破壊される)

上の場合、ループ回数 loop_times と、ループカウンタ cnt は
どちらのautoもintと判断されるのでとりあえず一致する。
しかし auto loop_times の初期値にintでない値を与えると
当然ながら loop_times と cnt の型が違ってしまう。

「cntの型は、loop_timesの型からconstを外したものだよ」
という変数宣言の書き方はないだろうか?

諸兄らの教えを乞いたい。