2008-09-15

デストラクタが必要な場合、コンセプトに記述すべし

以下のコードは、ill-formedで、コンパイルエラーになるべきである。

auto concept Foo< typename T >
{  T::T() ;  }


template < typename T > requires Foo < T >
void f()
{
    T x ;
    // ill-formed. concept Foo does not specify destructor.
}

コンストラクタとデストラクタは、忘れやすい。用心が肝要なり。

1 comment:

Anonymous said...

ConceptGCCだとこのコードはコンパイル通っちゃいますね