- C++相談室 part119 [転載禁止]©2ch.net
190 :デフォルトの名無しさん[sage]:2015/09/11(金) 15:00:10.29 ID:xy/6VGnh - 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を外したものだよ」 という変数宣言の書き方はないだろうか? 諸兄らの教えを乞いたい。
|