gpt4 book ai didi

c++ - 指向类的静态成员的指针

转载 作者:行者123 更新时间:2023-11-30 01:28:05 25 4
gpt4 key购买 nike

来自这个引用:

(8.3.3/3) A pointer to member shall not point to a static member of a class (9.4), a member with reference type, or "cv void."

为什么指针不能指向类的静态成员?

struct S {
static int f() { /*...*/ };

};

int main()
{
int (S::*s)() = &S::f; // why?
}

最佳答案

Why a pointer cannot point to a static member of a class?

因为出于成员资格的目的,它不是成员,仅出于范围的目的。除了范围之外,静态成员就像自由函数一样,不附加到类的实例。您可以使用非成员函数指针:

int (*s)() = &S::f;

关于c++ - 指向类的静态成员的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8026483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com