EffectiveC++読書会#06

EffectiveC++読書会第6回
1
遥佐保 @hr_sao

9/3(月)19:30~ Effective C++ 読書会 vol.6 大阪 第4章23~25項、第5章26項予定 http://t.co/90txUf5n #efcpp読書会

2012-09-03 00:15:30
秋猫@青い炎のC++er @akineko

今回のEffective C++読書会のUstreamは配信機材が先約により使用不可だった為、申し訳ありませんが中止となりました。 イベントを編集します 「Effective C++ 読書会 vol.6 大阪 http://t.co/jg0oSrrM#efcpp読書会

2012-09-03 19:09:27
若年寄(もう若くない) @kikairoya

鉱物「今から寝るので終わったら起こして」 #efcpp読書会

2012-09-03 19:31:55
m5Knt @m5knt

えらい前に本を読んでたんだけどどんな切り口で話しているのかちょっとだけ気になるなぁ #efcpp読書会

2012-09-03 19:36:17
suibaka @suibaka

ごめんなさい、雨がかなりひどくて動けなかったので今日はいけません #efcpp読書会

2012-09-03 19:54:41
遥佐保 @hr_sao

今日は誰もつぶやいてくれてない #efcpp読書会

2012-09-03 20:20:32
遥佐保 @hr_sao

25項:例外を投げないswapを考えよう #efcpp読書会

2012-09-03 20:24:07
遥佐保 @hr_sao

C++03までのSTLだと例外を投げないmoveを作るのはほぼ無理 #efcpp読書会

2012-09-03 20:26:35
遥佐保 @hr_sao

25項p111上のプログラム using std::swap; swap( ... ); // このswapにstd::を書かないことに超重要な意味がある #efcpp読書会

2012-09-03 20:30:00
遥佐保 @hr_sao

オーバーロードでどのswapが呼ばれるのか? #efcpp読書会

2012-09-03 20:33:10
suibaka @suibaka

using std::swap; swap( ... ); なのはC++の名前検索ルールに従って最適なswapが利用されるようにするため #efcpp読書会

2012-09-03 20:33:17
遥佐保 @hr_sao

@suibaka そうなんですけどね、テンプレートにもswapが書かれてたりすると、どのswapが呼ばれるべきかの判断がなかなか難しいって話になってます #efcpp読書会

2012-09-03 20:37:17
遥佐保 @hr_sao

using::swap; を付けてから、swap(...); することによって、テンプレートでなく、自分で特殊化したものが確実に呼ばれる。 #efcpp読書会

2012-09-03 20:42:51
遥佐保 @hr_sao

std::swap(x,y); // こんな感じで、あほな人がこんなことを書いた場合の対策も25項に書かれてる #efcpp読書会

2012-09-03 20:44:56
遥佐保 @hr_sao

P112、これは特殊化ではなくオーバーロード #efcpp読書会

2012-09-03 20:47:28
遥佐保 @hr_sao

@suibaka ADLルールで何かするのは危険な行為になることが。関数テンプレートなどでは名前空間の修飾子で解決したほうがいいよ。(意図しない関数が呼ばれる可能性がある)byくらいおらいと先生。それにすごく複雑なので覚えられない、必要ない。byでちまる先生 #efcpp読書会

2012-09-03 20:51:01
murase_syuka @murase_syuka

25項 イディオムになっているので、boost:swap使えらしい #efcpp読書会

2012-09-03 20:52:09
遥佐保 @hr_sao

swapは予約されてるもの、コピーコンストラクタと同じ #efcpp読書会

2012-09-03 20:56:36
遥佐保 @hr_sao

26項:変数の定義は可能な限り先延ばししよう #efcpp読書会

2012-09-03 20:58:50
遥佐保 @hr_sao

でも、コンストラクタの順番がちゃんと分かってるなら、どこに書いてもいいんじゃない? #efcpp読書会

2012-09-03 21:00:09