函数指针的无参数类型别名声明

huangapple go评论79阅读模式
英文:

type alias declaration for function pointer without parameters

问题

Cppreference - 类型别名 我知道以下类型别名声明是有效的:

using func = void (*)(int, int);

那么一个指向类成员函数的函数指针的等效形式是什么样的呢?

英文:

From Cppreference - Type alias I know that following type alias declaration works:

using func = void (*) (int, int);

How does the equivalent for a function pointer to a class member look like?

答案1

得分: 3

只需要在 * 前面添加一个合格的类名。

例如:using func = void (foo::*)(int, int);

示例

struct foo
{
    void bar(int, int);
};

using func = void (foo::*)(int, int);

func ptr = &foo::bar;
英文:

You just need to add a qualifying class name before the *.

For example using func = void (foo::*)(int, int);

Demo :

struct foo
{
    void bar(int, int);
};

using func = void (foo::*)(int, int);

func ptr = &foo::bar;

huangapple
  • 本文由 发表于 2023年2月8日 21:13:20
  • 转载请务必保留本文链接:https://go.coder-hub.com/75386323.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定