[過去ログ]
C++相談室 part156 (1002レス)
C++相談室 part156 http://mevius.5ch.net/test/read.cgi/tech/1621389313/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
653: デフォルトの名無しさん [sage] 2021/07/04(日) 20:21:13 ID:WJcubPcO 第2の隠れた引数でcallerがcalleeに構築すべき変数のアドレスを渡しているのだとすると >>627のコードが"default"の次に"copy"になるのはある程度説明がつく 1. return_S()関数でS構築 --- ここでS:S()が呼ばれ、"default"表示 2. auto hoge = return_S()では何も起きない(∵1で&hogeにSが構築済み) 3. take_S(hoge)で呼び出しの引数としてhogeをコピー --- &hogeにあるSが、スタックの上の方に引数としてコピーされる結果"copy"表示 しかしhogeはその後使っていないのだから、コンパイラ的には3はmoveになる余地があるはず なお>>641までの漏れのレスは第2の隠れた引数は仮定せず、return_S()(callee)がスタックのトップに return valueとしてS()を構築して、 それが呼び出し元(caller)が&hogeにcopy(ムーブコンがあればmove)する穏当なモデルを考えていた 実際n3337.pdf(古いが)を読む限りRVOのやり方は全く規定されてないからアリのはず…… 何で>>642が怒り狂うのかわからん…… http://mevius.5ch.net/test/read.cgi/tech/1621389313/653
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 349 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.022s