C++という言語とテスト容易性

  • 思うに、C++では、オブジェクトはスコープの始めにスタックに取ってスコープアウトで破棄するのが美しい
  • しかし多態性を利用するためにポインターか参照によるアクセスが必要
  • すなわち積極的に多態性を使わせようとしていないと思わざるを得ない
  • でも、そんじゃMockObjectをどうやって使ったらいいの
  • templateか?
template < typename FooType, typename BarType >
class Boo {
public:
    void function() {
        FooType aFoo;
        //...
    }
    //...
private:
    BarType m_aBar;
};
  • でも、Modern C++ Designのポリシーはなんだかもっと難しいことやってるし
  • かように難解なtemplateを使おうなんて、大それたことかもしれない

ってわけで、やっぱりよく分からない。このあたり、定説というのがあるんだろうか。僕が知らないだけというのは大いにありうるのだが...