[過去ログ] C++相談室 part156 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
972(2): デフォルトの名無しさん [] 2021/08/08(日) 15:36:10 ID:Hwfa9w/d(1/2) AAS
int a[3] = {1, 2, 3};
for(auto&& b : a) { std::cout << b; }
この範囲for文の「&&」って何者なの?
参照?
autoもautoで、autoはC++11で廃止になったって聞いてたんだけど・・・
973(1): はちみつ餃子 ◆8X2XSCHEME [sage] 2021/08/08(日) 15:50:15 ID:3b5W4SC5(1/3) AAS
>>972
auto は C から引き継いで C++ にも以前からあったキーワードだけれど、
誰も使ってなかったから元の意味を廃止してあらたな意味で使われるようになった。
廃止されたのは auto の以前の使い方であってキーワード自体は廃止されてない。
978(1): はちみつ餃子 ◆8X2XSCHEME [sage] 2021/08/08(日) 16:16:14 ID:3b5W4SC5(2/3) AAS
>>972
&& は普通は右辺値参照を意味するが、一部の状況では万能参照になる。
(言語仕様上は万能参照とは呼ばれないが通例としてそう呼ぶことが多い。)
初期化子によって左辺値参照か右辺値参照かを自動的に選択するので、
よく理解できてないなら範囲for文をつかうときは && にしておけと入門者に勧める解説はよく見る。
実際、その状況では auto& と書いても結果は変わらない。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.220s*