C++0x さんは、テンプレートと const があるから型安全だし、 auto で効率よくプログラミングできるし、計算機リソースにおいても軽量だし、間違いなく LL ですね。←
2011-01-17 05:28:37C++0xの型推論のautoの利点ってなんだろう。型はプログラミングしているときに大体自明じゃないか? って気がするんだけどそうじゃないのかな。ジェネリックプログラミングの方向で利用するのが正しいのかな?
2011-01-17 05:37:46@mEGGrim std:vector<std::string>::const_iterator なんて書きたくないです。
2011-01-17 05:38:44std::map<std::string, std::string>::const_iterator iter = m.find("hoge"); if( iter != m.end() ){ ~ } とか書きたくない。 auto 使わせろ。
2011-01-17 05:41:50明示的に型をチェックすれば、型をチェックしたところでコンパイルエラーになってくれる。 auto を使うと、実際に使われるまではコンパイルエラーにならないし、エラーメッセージも意味不明になる。
2011-01-17 05:47:13@nanairo_t それとは別に、 auto& を使った http://ideone.com/1Kh0L のようなコードも書けますね。 int だとメリットは特にないですが、これがヘッダ依存の型だった場合とかはメリット高いです。
2011-01-17 06:16:48C++0x における auto を使った変数束縛は、変数を書き換えたい場合には auto を、変数を書き換えたくない場合には auto const& を、参照先を書き換えたい場合には auto& を、それぞれ使うのが良い。 http://bit.ly/gkJdiJ も参考に。
2011-01-17 06:20:49よっぽどの理由: http://bit.ly/fdKaB9 RT @SubaruG: auto&& は、よっぽどの理由がない限り、使ってはいけません。
2011-01-17 06:23:45@nanairo_t この場合は int& と書いたのと同じです。毎回 pImpl->member1 って書くのは面倒だし効率も悪いので、あらかじめ参照を用意しておく感じですね。
2011-01-17 06:27:30C++難しい・・・ RT @SubaruG: よっぽどの理由: http://bit.ly/fdKaB9 RT @SubaruG: auto&& は、よっぽどの理由がない限り、使ってはいけません。
2011-01-17 06:42:53そりゃ、難しく書いてますし。 RT @rofi: C++難しい・・・ RT @SubaruG: よっぽどの理由: http://bit.ly/fdKaB9 RT @SubaruG: auto&& は、よっぽどの理由がない限り、使ってはいけません。
2011-01-17 06:44:06いやほんと、 auto && は型安全をぶち壊してくれる、うっかりミスの温床なので、よっぽど変なことをしない限りは、使っちゃ駄目ですよ。
2011-01-17 06:51:20コピー出来ないクラスを関数から値返しして、その値をローカル変数に束縛する、なんて状況は、普通に C++ を書く場合には起きえないです。 shared_ptr 使いなさい。
2011-01-17 06:53:00@SubaruG 実はpimplはthisポインタを渡す必要もないという方に驚いてしまいました。このautoの仕様はC++0xからのものでしょうか?それともC言語からのものでしょうか?
2011-01-17 06:54:37@nanairo_t auto の説明は http://bit.ly/efy1rF 辺りを参照してください。 pImpl に関しては、要するにやってることは不完全型を使ってメンバ構成を秘匿しようってだけなので、普通のクラスで出来ることなら(テンプレート以外)なんでも出来ます。
2011-01-17 07:01:07