Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;:SFINAE和随机发生器/引擎_C++_Random_Sfinae - Fatal编程技术网

C++ C++;:SFINAE和随机发生器/引擎

C++ C++;:SFINAE和随机发生器/引擎,c++,random,sfinae,C++,Random,Sfinae,我目前有一个类的构造函数,它是: template<class TX, class TY> MyClass(const TX &x, const TY &y) 模板MyClass(常量TX&x、常量TY&y) 允许我基于2个值构造类 我希望能够用C++ 2011的随机生成器/引擎构造我的班级。 template<class TG, class TE> MyClass(TG &generator, TE &engine) 模板MyCla

我目前有一个类的构造函数,它是:

template<class TX, class TY> MyClass(const TX &x, const TY &y)
模板MyClass(常量TX&x、常量TY&y)
允许我基于2个值构造类

我希望能够用C++ 2011的随机生成器/引擎构造我的班级。
template<class TG, class TE> MyClass(TG &generator, TE &engine)
模板MyClass(TG和发电机、TE和发动机)
如何修改最后一个构造函数,因为在这种形式下,它与编译器的第一个构造函数是一样的。我想我可以用SFINAE,但我不知道怎么用


多谢各位

TX和TY参数在第一个构造函数中代表什么?要使用SFINAE,您必须找到生成器和引擎的api中可靠地与TX和TY不同的方面,例如成员变量或函数。
seed
函数可能是一个很好的候选函数。检查具有已知签名的成员函数的一般技术记录在此处的另一个答案中: