21/11/14 15:13:11.67 p964tW2k.net
実質的にはほとんどなにも変わらないと思うけど、無駄なコピーが減る場合もあるので付けておくに越したことはないと思う
1007:デフォルトの名無しさん
21/11/14 15:45:24.64 p964tW2k.net
まぁ、でも参照もコストゼロってわけじゃないから、場合によっては遅くなることもあるか…
1008:デフォルトの名無しさん
21/11/14 16:54:05.80 tkHjD9h1.net
const って伝播するから嫌い
付けるのは反対ではないが
1009:デフォルトの名無しさん
21/11/14 17:26:15.73 CXUBNW9m.net
伝播ってどういうこと?
1010:はちみつ餃子
21/11/14 17:38:21.62 A4GQ1/1N.net
参照で受け取るときには const を付けないと右辺値を受け取れないんだよ。
&& にしたら逆に右辺値しか受け取れないし、
テンプレートにするのも面倒くさいし、
const 参照で不都合がないならまずそれを選ぶのが常道になってる。
積極的にそうする必要はなくても手癖でやるよね。
1011:はちみつ餃子
21/11/14 17:44:17.95 A4GQ1/1N.net
>>985
const 無しから const 付きの参照へは暗黙の型変換が許されるがその逆はない。
const 付きにしたらそれがずっと伝わっていくってことだ。
元のオブジェクトが const でないなら const_cast で const を剥がして書き換えるのは一応は有りなはずだが、
かなり行儀が悪いしな。
1012:デフォルトの名無しさん
21/11/14 17:59:13.06 CXUBNW9m.net
スコープ限定のconstを欲するひとがいるとは思わんかった
1013:デフォルトの名無しさん
21/11/14 18:02:00.71 nLCz7RQY.net
責任ベースのconstは有り得るのでは?
privateが在るんだから。
1014:デフォルトの名無しさん
21/11/14 18:05:38.66 leu9kbhs.net
というか伝播しなかったら困るのでは?
お行儀悪くconst_castしない前提なら
ある関数の引数がconstだったら、その関数が呼び出す関数もまたconstであるという保証は大切だろうし
1015:デフォルトの名無しさん
21/11/14 18:45:07.42 nLCz7RQY.net
もちろんそれは大切ですよ。
伝搬しなかったら意味ないし。
1016:ハノン
21/11/14 19:45:46.13 5CSGBVhH.net
K&R2 にも const はありますが全然使わなかったなあ…volatile 同様キワモノだとおもっていました(爆)
1017:デフォルトの名無しさん
21/11/14 22:33:34.47 oUoND4t/.net
C++20からコルーチン入るけどコルーチンの返り値に関数内の変数の参照返すの問題になるかな?
hoge& test(){
hoge tmp;
for(int i=0;i<10;++i){
co_yield tmp;
}
}
//返り値は実際はgeneratorとかになるかもしれない
1018:デフォルトの名無しさん
21/11/14 22:35:39.21 PetPaRNq.net
yeild使えるようになるのか
1019:デフォルトの名無しさん
21/11/15 01:03:02.10 tPLK0GqY.net
viewは値渡しが基本だよ
1020:デフォルトの名無しさん
21/11/15 06:05:50.61 Rt8JG1Np.net
何かのリミッタが外れた感じだね
無差別にぶち込むようになった
1021:デフォルトの名無しさん
21/11/15 06:11:48.42 Rt8JG1Np.net
江添が逃げた理由も察しがつく
1022:デフォルトの名無しさん
21/11/15 15:55:33.66 Ux5WoKB6.net
更新してないよね
1023:デフォルトの名無しさん
21/11/15 16:41:30.12 i/3H6iLT.net
hage
1024:デフォルトの名無しさん
21/11/15 16:42:03.92 i/3H6iLT.net
10^3
1025:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 98日 5時間 44分 33秒
1026:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています