Montag, 30. November 2009

C++ Action Template
#include
using namespace std;

template<int DoNTimes, class Action>
class NTimes
{
public:
void operator()()
{
NTimes()();
Action()();
}
};

template<class Action>
class NTimes<1,action>
{
public:
void operator()()
{
Action()();
}
};

class HelloWorld
{
public:
void operator()()
{
cout<<"Hallo Welt!"<
}
};


void main()
{
NTimes<3,>()();
system("pause");
}