C++プログラマであるかを見分ける10の質問の解答例
1.トポロジに応じて列挙ります/2.コンパイラに対し型の意味論を強制します/3.引値による自動解決、派生からの仮想基底呼び、派生の知らんでいい事は教えない/4.変数ないしメンバの不変明示/5.複数の既定型を合体できます/6.ヒープはスマポ/7.複製とかむーぶとかconstとか作る
2011-03-07 15:59:408.virtualってないとRAIIで基底のデストラクタ呼ばれず期待外れリークあぼん注意/9.なんかepiさんがブログに書いてたの読めばまとまってていいと思います。よほど複雑な事してなきゃ必要に応じて飛ばせばいいんじゃない/10.実行時評価が要らなきゃテンプレートでいいんじゃない
2011-03-07 16:04:012番はstatic_castが・・・あれ、どう説明すればいいんだろ。暗黙変換可なのとvoid*から他ポインタへの変換と一応継承関係にあるクラスのポインタが変換出来るとかか?
2011-03-07 22:26:273番。overloadは引数が違う同名関数、overrideは仮想関数の派生クラスでの再定義、 hidingはオーバーライドすると基底クラスのオーバーロードが隠れるとかのことかね
2011-03-07 22:32:43というか3番のhidingは単純に派生クラスで同じ名前の定義したら名前隠すってことでいいのか。無理にオーバーロードとオーバーライドに絡めすぎた。
2011-03-07 22:39:46段々適当になってきたけど6番。リソース管理は取り敢えずスマポ使う。無効値使いたい場合はoptionalの使用を検討。生ポを使うのはnullがありえる単純な参照位でそれ以外は参照って感じ?
2011-03-07 22:53:277番。const教的には代入演算子は要らないかも。は置いといて、デフォルトじゃまずいときはdeleteするか、望む挙動になるように自分で書くとかか。
2011-03-07 22:55:1010、使い分けか。よく分からんが双方のメリットをあげると前者は実装を隠蔽できてそこからの依存関係解消からのコンパイル速度向上、後者は静的解決だから実行時に速いとかかなぁ。
2011-03-07 22:59:45A.1 表向きはアルゴリズムと共に使うため。実は作者が自慢するため。 RT @disktnk RT @super_rti: C++プログラマであるかを見分ける10の質問 - http://htn.to/uNHztd
2011-03-07 23:10:18A.2 Cスタイルの置換は大変。reinterpret_castかstatic_castかコンパイラにより挙動が違う。悩むな禿げるぞ。 RT @disktnk RT @super_rti: C++プログラマであるかを見分ける10の質問 - http://htn.to/uNHztd
2011-03-07 23:13:14A.3 君に良心があらばoverloadするな。罪深きoverride。hiding地獄。editor救世主に救われたければ。福音を。 RT @disktnk RT @super_rti: C++プログラマであるかを見分ける10の質問 - http://htn.to/uNHztd
2011-03-07 23:15:34A.4 constは感染する。それは大変有名である。病状が進行するとconst_cast病に罹る。深刻である。 RT @disktnk RT @super_rti: C++プログラマであるかを見分ける10の質問 - http://htn.to/uNHztd
2011-03-07 23:17:31A.5 多重継承は共産主義である。若いうちに熱狂しなければ愚か。プロになって熱狂してれば真性バカ。そしてvirtual public。 RT @disktnk RT @super_rti: C++プログラマであるかを見分ける10の質問 - http://htn.to/uNHztd
2011-03-07 23:19:53A.6 創世記unique_ptrがあれば良かった。手遅れである。リファレンスカウンタに災いあれ。マルチスレッド地獄に落ちよ。 RT @disktnk RT @super_rti: C++プログラマであるかを見分ける10の質問 - http://htn.to/uNHztd
2011-03-07 23:22:11A.7 腱鞘炎悪化に備えよ。汝のプログラマ人生を縮めるもの。それは実体なきprivateな代入演算子とコピーコンストラクタである。 RT @disktnk RT @super_rti: C++プログラマであるかを見分ける10の質問 - http://htn.to/uNHztd
2011-03-07 23:24:29A.8 virtualデストラクタ?マイヤーズを嫁。おっと忘れてた第3版を買え。神にも誤りはある。 RT @disktnk RT @super_rti: C++プログラマであるかを見分ける10の質問 - http://htn.to/uNHztd
2011-03-07 23:26:05