49 lines
721 B
C++
49 lines
721 B
C++
|
|
#include <eoInit.h>
|
|
#include <eoCounter.h>
|
|
|
|
void f(eoInit<int>& func)
|
|
{
|
|
int i;
|
|
func(i);
|
|
}
|
|
|
|
class Tester : public eoInit<int>
|
|
{
|
|
public :
|
|
void operator()(int& i)
|
|
{
|
|
i=1;
|
|
}
|
|
};
|
|
|
|
#include <iostream>
|
|
#include <eoFixedLength.h>
|
|
#include <eoVariableLength.h>
|
|
|
|
using namespace std;
|
|
|
|
int main(void)
|
|
{
|
|
Tester test;
|
|
|
|
eoFunctorStore store;
|
|
|
|
/// make a counter and store it in 'store'
|
|
eoInit<int>& cntr = make_counter(functor_category(test), test, store);
|
|
|
|
eoUnaryFunctorCounter<eoInit<int> > cntr2(test);
|
|
|
|
f(cntr);
|
|
f(cntr2);
|
|
f(cntr2);
|
|
f(test);
|
|
|
|
typedef eoVariableLength<double, int> EoType;
|
|
EoType eo;
|
|
|
|
eo.push_back(1);
|
|
eo.push_back(2);
|
|
|
|
return 1;
|
|
}
|