如何调用此成员模板函数?

How to call this member template function?

本文关键字:成员 函数 何调用 调用      更新时间:2023-10-16

调用此函数的正确方法是什么?

template<typename T, typename U>
DX& DataExchange::AddNew(const T& Table, const U& (T::* fnMemoryFunc)() const)

调用函数的一种方法是:

struct Foo {
const X& fnMemoryFunc() const { return /*what ever*/};
};
int main (){
Foo a;
AddNew(a, &Foo::fnMemoryFunc)
}

我根据简单性将添加新更改为免费功能。

编辑:正如您在评论中询问它可能做什么时所显示的那样... 这都是假设...并且没有足够的信息。

AddNew 需要引用可能属于类 T 的内部数据(cons 引用返回类型(,可以是任何类型,这就是原因,因为需要指向该方法的指针才能知道返回类型。