#include <iostream>
using namespace std;
struct Test {
template<typename T>
static bool Function(T x)
{
return true;
}
};
using testfn = bool (*)(int);
int main() {
int x=0;
testfn fnPointer = Test::Function;
constexpr auto yourFunction = &Test::Function<int>;
std::cout << boolalpha << fnPointer(x) << std::endl;
std::cout << boolalpha << yourFunction(x) << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IFRlc3QgewogICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4KICAgIHN0YXRpYyBib29sIEZ1bmN0aW9uKFQgeCkKICAgIHsgCiAgICAJcmV0dXJuIHRydWU7CiAgICB9Cn07CgoKCnVzaW5nIHRlc3RmbiA9IGJvb2wgKCopKGludCk7CgppbnQgbWFpbigpIHsKCWludCB4PTA7CgoJdGVzdGZuIGZuUG9pbnRlciA9IFRlc3Q6OkZ1bmN0aW9uOwoJY29uc3RleHByIGF1dG8geW91ckZ1bmN0aW9uID0gJlRlc3Q6OkZ1bmN0aW9uPGludD47CglzdGQ6OmNvdXQgPDwgYm9vbGFscGhhIDw8IGZuUG9pbnRlcih4KSA8PCBzdGQ6OmVuZGw7CglzdGQ6OmNvdXQgPDwgYm9vbGFscGhhIDw8IHlvdXJGdW5jdGlvbih4KSA8PCBzdGQ6OmVuZGw7CgkKCXJldHVybiAwOwp9