C++相談室 part131 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。
前スレ
C++相談室 part130
http://mevius.2ch.net/test/read.cgi/tech/1490917669/
このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.100【環境依存OK】
http://echo.2ch.net/test/read.cgi/tech/1478440682/
■長いソースを貼るときはここへ。■
http://codepad.org/
https://ideone.com/
[C++ FAQ]
https://isocpp.org/wiki/faq/
http://www.bohyoh.com/CandCPP/FAQ/ (日本語)
-
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured 初期化はどう?って言われても・・
右辺値参照で初期化するのがベターな状況は
浮かびませんけど >>981
と言いつつも
思い浮かばないんでしょ?
じゃあ君もワイと一緒ですね んん?
右辺値を束縛したい(一時オブジェクトだから左辺値としての実体はない)
けどconst左辺値じゃダメ(中身を変更したいから)
↑
これのどこにわかりにくい点があるというのか?
「RVOが保証されるようになったらいらない」という意見なら理解できるが・・・ たとえば swap の実装なんか(素朴には)moveを3回繰り返すんだから
右辺値参照の有用性は明らかだろ >>973「なんでそんなに一時オブジエクトを参照しなきゃいけないコードを書くの?」
↓
>>984「右辺値を束縛したい(一時オブジェクトだから左辺値としての実体はない)けどconst左辺値じゃダメ」
「これのどこにわかりにくい点があるというのか?」
これがアスペというやつか >>985
これを右辺値参照Verに書き換えて
利点を示してもらえますか?
void swap(int& a,int& b)
{
int c = a;
a = b;
b = c;
}
void main()
{
int a = 1;
int b = 2;
swap(a,b);
} >>986
そっちこそ唐突に>>793と>>984を唐突に矢印で結び付けてるけど大丈夫か?
お前の脳内の連想なんて誰にもわからないぞ なら何なら利点があるの?
long long型ならあるの?
もう訳が分からないよ >>991
コピーコストの大きいコンテナだったら三回も代入したくないだろ? >>982
もう使わないなら右辺値参照版のコンストラクタに渡したほうがいいじゃん
そしたら、コピーが起きなくて済むでしょ? >>986
右辺値を束縛したい文脈ではかわりにconst左辺値で常におkなのでは…(ていうかconstはあってもなくても良い
>>985
T型データのswapは素朴にはT型データのコピー3回+破棄2回ぐらいが生じる
のでわ… swapが頻繁に起こるような用途なら、なんではじめからポインタで管理しないんですか? 一時オブジェクトもglvalueなんだから
T &に束縛できればよかった >>995
ヒープじゃなくてスタックで処理したいから 結局のところ
右辺値参照はコピーコストを削減出来るのが利点で
それぐらいしか使い道がないってことか
かつ、コピーコンストラクタよりムーブコンストラクタの方が
コストを軽く出来るクラスに限られると
struct a{ void* p; }; // これには効果が期待出来るが
struct b{ int p[65536]; }; // これには効果は期待出来ない
結論としては、やっぱいらねーやこんなのってことだな 後者も効果が期待できるよ
そして、コピーコストが削減できるだけってのは正しいが、いるかいらないかは人による >>998
> struct b{ int p[65536]; }; // これには効果は期待出来ない
それはあんたがそんな構造をよく使うんなら正しい
よかったじゃないか、結論が出てw このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 72日 12時間 33分 11秒 レス数が1000を超えています。これ以上書き込みはできません。