#include <iostream>
#include<map>
#include<string>
#include<vector>
template <typename callBackOne,
typename callBackTwo>
class MyClass { // The class
public:
callBackOne cbo;
callBackTwo cbt;
MyClass(callBackOne cbop, callBackTwo cbtp){
cbop();
cbtp();
}
};
void voidFuncOne()
{
std::cout<<"funcone called"<<std::endl;
}
void voidFuncTwo()
{
std::cout<<"functwo called"<<std::endl;
}
MyClass test(voidFuncOne,voidFuncTwo); //CTAD used automatically here
//-----^------------------------------->no need to pass arguments explicitly since CTAD will be used
int main()
{
return 0;
}