Sign in to follow this  
deffer

Templated inheritance - possible? how?[SOLVED]

Recommended Posts

So this is my new concept of programming ;)
template<class TVelEffect, class TShapeEffect>
class CActiveEffect : public TVelEffect<TShapeEffect>
{
public:
   CActiveEffect(void) {};
   ~CActiveEffect(void) {};

   // Some more members.
};


And it cries with syntax error : '<'. Can I possibly achieve this, and how(or why not)? /def

Share this post


Link to post
Share on other sites
Quote:
Original post by deffer

template<class TVelEffect, class TShapeEffect>
class CActiveEffect : public TVelEffect<TShapeEffect> //...




template <
typename TShapeEffect,
template < typename > class TVelEffect
>
class CActiveEffect : public TVelEffect<TShapeEffect>


Its called a template template parameter.

And TVelEffect type parameter is most likely whats known as a Policy class, should probably give it a default type i.e.


template <
typename TShapeEffect,
template < typename > class TVelEffect = foo_effect
>
class CActiveEffect : public TVelEffect<TShapeEffect> { /*...*/ };

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this